“疑难杂症”乱炖一篇
来源:互联网 发布:国内可备案的域名 编辑:程序博客网 时间:2024/05/17 04:01
近期在上线一个模块,工作量比较大,故晚上经常性加班,工作日生活有点两点一线。
期间遇到了形形色色的一些问题,大致记录下。
工具:IDEA
Q1:修改了一个Entity,准备删掉一个字段。
启动tomcat时候,localhost:8080 无法正常打开网页。
Debugger显示:Connected to the target VM, address: '127.0.0.1:57484', transport: 'socket (刚又尝试了一遍,删除Entity中的变量,正常部署项目.....尴尬了)
原因:由于在项目中的这些字段是直接映射到数据库字段里的,所以当我在Entity里删了该字段之后,导致无法映射成功。
解决方法:
目前对字段对应的变量做什么操作。
原考虑:
1,直接在Entity的变量上增加注解:@Transient,防止映射到数据库里
2,直接删除变量
显然第二种实在点。
Q2:页面跳转问题(Ajax)
类似流程:前端页面输入一个数值,该值传入后台Controller里,进行查询数据库,如果查询到该值,要在原页面上提示 数值已存在,如果没查询到,则执行某insert 操作,跳转到另一个页面。
解决方法:
采用Ajax控制,大致代码逻辑如下:
$.ajax({ url: "check", //进入到Conroller中的@GetMapping(path = "/check", produces = MediaType.APPLICATION_JSON_VALUE) type: "GET", //GET方式 data: { K: V }, //传入后台的值 dataType: "json", success: function(data) { if (data.result== 0) { //根据后台ResponseEntity传回的数据,在后台代码中,
//我这里用ModelMap model,将model.addAttribute("result" ,result); result=0 表示查询不到数据
//return ResponseEntity.ok(model)
location.href = "nextPage"; //跳转到新页面 } else { $("#errorText").text("数值已存在"); //弹出提示语 return; } },})
具体语法请百度下,我用得相对简单。
Q3:设置查询时间(只是觉得有趣,故记录下)
前端页面有个时间范围的搜索条件,当输入值之后,并没有将endDate设置为选定日期的23:59:59,似乎是因为项目中没有使用插件的原因
为了统一下风格,故在后台进行处理。
这里将时间设置为查询日期的23:59:59
Calendar endCalendar = Calendar.getInstance();endCalendar.setTime(endDate);//时:分:秒endCalendar.set(Calendar.HOUR_OF_DAY, 23);endCalendar.set(Calendar.MINUTE, 59);endCalendar.set(Calendar.SECOND, 59);return endCalendar.getTime();
Q4:映射数据库字段问题(比较有趣的点)MySQl
某表新增加一个字段,在Entity里只需增加一个成员变量即可( JPA 规范机制)
但新增字段比较特殊,是一个外键,即用来关联另一张表的 XXid。
实操:成员变量为另一个表对应的Entity类型 XX,映射到数据库之后显示为XX_id。即在Entity中直接创建了一个对象 作为成员变量。
阅读全文
0 0
- “疑难杂症”乱炖一篇
- 疑难杂症
- 疑难杂症
- 疑难杂症
- 疑难杂症
- 疑难杂症
- 疑难杂症!!!
- 疑难杂症
- 疑难杂症
- 疑难杂症
- 疑难杂症
- 疑难杂症
- 疑难杂症
- 疑难杂症
- 疑难杂症
- 浏览器测试乱炖
- 一锅乱炖【数论】
- NodeJS乱炖
- webpack安装和命令行
- windows nginx 80端口占用
- 回溯法解决八人过河问题
- 洗礼灵魂,修炼python(1)--python简介
- 深度学习网络训练技巧汇总
- “疑难杂症”乱炖一篇
- Sicily 1443. Printer Queue
- BZOJ2142 礼物 [扩展lucas定理]
- ConfigReader(五十)—— ReadSkillConfig
- kubernetes 使用NFS挂载共享存储的容器(二)
- web漏洞 XSS
- StringUtil_字节流转成字符串
- ssh免密码登陆
- [TOJ 3515][优先队列]Middle number