导航
# 1、textarea文本域HTML代码 ```HTML .mian-textarea{width: 388px;height: 198px;background: #FFFFFF;border: 1px solid #CCCCCC;padding: 16px;} .mian-textarea-word{height: 22px;line-height: 22px;text-align: right;color: #999;font-size: 14px;margin-top: 23px;} .mian-textarea-word span{font-size: 14px;color: #333;} .mian-textarea textarea{width: 100%;line-height: 22px;height: 154px;font-family: "微软雅黑";color: #333;font-size: 16px;resize:none;outline: none;} .mian-textarea textarea::-webkit-input-placeholder{color: #ccc;} 0 / 240 ``` # 2、分析 我们需要在键盘输入后显示输入文本的长度,那么就需要在textarea中使用onkeyup事件(当用户释放键盘按钮时执行Javascript代码);并写入到span中 # 3、实现 HTML代码 ```HTML 0 / 240 ``` js代码 ```javascript function textareaLength(obj, maxLength, id) { var curr = obj.value.length; if (curr > maxLength) { alert("最多可输入240字!"); } else { // document.getElementId(id).innerHTML = curr; $('#' + id)[0].innerHTML = curr; } } ```
# 1、背景 [2021年8月5日 JavaScript获取工作日](https://minedeed.com/JavaScript/11.html "2021年8月5日 JavaScript获取工作日") 上篇文章讲到,Lucas提了个需求:初始时间为工作日,要找n天后的工作日的时间,要用JavaScript来写,周末又来了,JavaScript不满足需求了,要用Java来写。 还要写的通用一些。我脸上浮现了毫无灵魂的微笑。。。 当然,只是排除了周末,节假日不管的! 废话不多说,直接上代码吧! # 2、代码 ```java package com.mahalalel.utils; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * 获取n天后的工作日时间 * * @author Mahalalel * @createTime 2021/8/9 14:12 */ public class WorkDayUtil { /** * 日期格式 */ public static SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd"); /** * 获取工作日时间 * * @param startDate 起始时间 * @param num num个工作日 * @return */ public static Date getWorkDay(Date startDate, int num) throws ParseException { Date tomorrow = null; int delay = 1; while (delay
# 1、问题 FreeMarker template error (DEBUG mode; use RETHROW in production!): Template inclusion failed (for parameter value "../common/header.ftl"): Template not found for name "../common/header.ftl". Reason given: Backing out from the root directory is not allowed. 原因:**Backing out from the root directory is not allowed.** FreeMarker没法引入配置模版文件目录的上层文件夹中的模板文件. # 2、排查 ## 2-1、ftl文件引入 错误的引用: ```ftl ``` 项目的目录结构如下: [![](https://minedeed.com/content/uploadfile/202108/cddb1628231009.png)](https://minedeed.com/content/uploadfile/202108/cddb1628231009.png) ## 2-2、后台返回 ```java @GetMapping("/login") public String login(Model model) { return "admin/system/login"; } ``` ## 2-3、ftl引用修改 ```ftl ``` # 3、启动测试后正常显示页面
# 背景 小伙伴Lucas有个需求:初始时间为工作日,要找n天后的工作日的时间 # 实现 ## 第一种 ```javascript /** * 判断下一个工作日的时间 */ function get_next_weekday(date) { var tomorrow = new Date(date.setDate(date.getDate() + 1)) return tomorrow.getDay() % 6 ? tomorrow : get_next_weekday(tomorrow) } function getWeekday(date,num){ for (let i = 1; i
# 1、时间字段设置默认值 ```java @Column(name="CREATE_TIME", columnDefinition="TIMESTAMP DEFAULT CURRENT_TIMESTAMP", insertable = false, updatable = false) @Generated(GenerationTime.INSERT) private Date createTime; ``` 解释: ①、columnDefinition:设置默认值以及生成注释 ②、GenerationTime:可用选项ALWAYS、INSERT和NEVER; - 选项为NEVER,SQL执行INSERT和UPDATE时,不会获取数据库默认值 - 选项为INSERT,SQL只会在INSERT时,获取数据库默认值 - 选项为ALWAYS,表明该属性的值由数据库生成;在每次执行insert、update时执行select语句来查询获取该属性的值;此时属性也应该标识为只读(insertable、updatable) ③、insertable、updatable:设置为false,该属性就不会在insert或者update语句中出现,该属性的值就由数据库默认值设置 # 2、使用GetMapping获取数据异常解决 ## 2-1、异常如下: No serializer found for class org.hibernate.proxy.pojo.bytebuddy.ByteBuddyInterceptor and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) (through reference chain: com.mahalalel.baseproject.entity.OperaterLog$HibernateProxy$JJMDYJDv["hibernateLazyInitializer"]) ## 2-2、原因 spring boot使用jpa查询返回实体后,返回接口时候json格式化出错; fastxml.jackson将对象转为json报错,发现有些字段为null; 在接口实现类中,使用了getOne(Long id)方法,这个方法返回的是对象的引用。 ## 2-3、解决 在实体类添加如下注解: @JsonIgnoreProperties(value = { "hibernateLazyInitializer"}) ## 2-4、测试 使用postman访问接口,返回正确数据库数据 # 3、时间设置 ## 3-1、一般创建时间只会在插入数据的时候,生成数据;更新时间只有在数据更新的时候,设置数据 创建时间字段添加注解@CreatedDate;更新时间字段添加注解@LastModifiedDate ```java @Column(name = "create_time") @CreatedDate private Date createTime; @Column(name = "update_time") @LastModifiedDate private Date updateTime; ``` ## 3-2、实体类添加监听器注解 ```java @EntityListeners(AuditingEntityListener.class) public class Entity { } ``` ## 3-3、最重要的,需要在启动类中添加启用JPA审计功能的注解 ```java @EnableJpaAuditing public class ProjectApplication { } ``` ## 3-4、经过测试,发现创建数据时,时间可以写入,但是更新时,创建时间仍然会被置为null 故使用第一种方式: ```java @Temporal(TemporalType.TIMESTAMP) @CreationTimestamp @Column(name = "create_time", updatable = false, columnDefinition = "timestamp default current_timestamp comment '创建时间'") private Date createTime; @Temporal(TemporalType.TIMESTAMP) @UpdateTimestamp @Column(name = "update_time") private Date updateTime; ``` ---未完待续
# 1、自定义了配置文件 ```properties praise.siteName = mahalalel praise.siteUrl = http://127.0.0.1 ``` # 2、配置文件配置 ```java @ConfigurationProperties(prefix = "praise", value = "site.properties") ``` # 3、启动应用 报如下错误 ```log In AnnotationAttributes for annotation [org.springframework.boot.context.properties.ConfigurationProperties] declared on class 'com.xxx.config.SiteConfig', attribute 'prefix' and its alias 'value' are declared with values of [praise] and [site.properties], but only one is permitted. ``` 错误原因在于,注解ConfigurationProperties的属性prefix和value不能同时使用 # 4、修改并验证 ```java @ConfigurationProperties(prefix = "praise") public class SiteConfig { private String siteName; private String siteUrl; // get/set方法省略 } ``` 控制器内调用 ```java @RestController @RequestMapping("/task") public class TaskController { @Autowired private SiteConfig siteConfig; @GetMapping("/hello") public String hello(){ String siteName = siteConfig.getSiteName(); return "Hello Task!!!!" + siteName; } } ``` 访问地址:http://localhost:8081/task/hello 页面显示: ``` Hello Task!!!!mahalalel ```
# 1、问题出现 项目需求,要求导出Excel带上时间,所以我就用常用的日期时间格式:yyyy-MM-dd HH:mm:ss; 但是测试过程中出现以下异常 Exception occurred during processing request: Invalid char (:) found at index (16) in sheet name '报名表2021-08-02 15:00:34' java.lang.IllegalArgumentException: Invalid char (:) found at index (16) in sheet name '报名表2021-08-02 15:00:34' # 2、问题分析 出现以上问题,是因为在导出Excel的时候,Excel的名字中带了“:”; 大家可以看到我取的Excel名称“报名表2021-08-02 15:00:34”,这样的Excel名称就会有问题 另外在桌面新建Excel时,名称不允许包含以下字符: \/:*?"| [![](https://minedeed.com/content/uploadfile/202108/20b51627952752.png)](https://minedeed.com/content/uploadfile/202108/20b51627952752.png) # 3、解决方法 修改java导出日期格式,使用“yyyy-MM-dd HH_mm_ss” SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH_mm_ss"); # 4、发散 通过图片我们可以知道导出Excel时,不能设置“\/:*?"|”,否则程序会报错
背景:本人最近用spring resttemplate在对接airflow的时候,因为是swaager生成的模板,所以或多或少会存在一些问题,最近遇到一个400 BAD REQUEST,虽然最终问题和我猜想的一致,但是我还是想探究一下,于是想到Fillder进行抓包分析。 ### 警告:Fillder用得好,牢饭吃得早 首先看到报错的时候,是无从下手的 ![](https://minedeed.com/content/uploadfile/202107/34c81627627272.png) 通过debug分析以后,感觉问题所在了,可能是把null当"null"传输了 ![](https://minedeed.com/content/uploadfile/202107/c32e1627627346.png) 于是开启fillder,在ide启动springboot地方选择edit configuartions ![](https://minedeed.com/content/uploadfile/202107/f86e1627627514.jpg) 然后在Vm options加入:-Dhttps.proxySet=true -Dhttp.proxyHost=localhost -Dhttp.proxyPort=8888 -Dhttps.proxyHost=localhost -Dhttps.proxyPort=8888,执行测试方法 ![](https://minedeed.com/content/uploadfile/202107/cbfd1627627637.png) 看到fillder里面确实有null ![](https://minedeed.com/content/uploadfile/202107/d41a1627627717.png) 知道问题所在,加上null不传,收工 ![](https://minedeed.com/content/uploadfile/202107/55a51627627770.png)
# 1、输出最近5次的提交信息 git log -5 # 2、创建新的提交 git rebase -i HEAD~1 输入命令后,回车,显示提交记录信息。 接下来,输入“i”进入编辑模式,将要修改的提交记录信息由“pick”改为“edit”; 然后,退出编辑模式(Esc键),输入“:wq”,保存编辑内容。 # 3、追加提交 git commit --amend 输入命令,回车,进入编辑器,显示最近一次提交; 接下来,输入“i”进入编辑模式,修改提交信息; 然后,退出编辑模式(Esc键),输入“:wq”,保存编辑内容。 # 4、修改完成 git rebase --continue 提示:“Successfully rebased and updated refs/heads/master.” # 5、推送远端 git push -f --set-upstream origin master 操作图片如下: [![](https://minedeed.com/content/uploadfile/202107/bb5d1627290528.png)](https://minedeed.com/content/uploadfile/202107/bb5d1627290528.png)
# 1、更新至指定版本 ## 1-1、命令 命令: svn update -r 指定版本号 ## 1-2、TortoiseSVN操作 首先,找到要更新的项目的文件夹 第二,右键 -->> 点击“TortoiseSVN” -->> 点击“更新至版本” 如下图所示: ![](https://minedeed.com/content/uploadfile/202107/thum-57121626763256.png)(版本提示框) 第三,在打开的对话框中,依次选择“版本”,输入要更新的版本号,然后点击“确定”,即可更新到指定版本。 ![](https://minedeed.com/content/uploadfile/202107/26c41626763466.png)(版本更新提示框) 未完待续。。。。