1 Mybatis的where标签
select id=“selectIfCondition” resultType=“com.heiketu.testpackage.pojo.Product”>
SELECT
prod_id prodId,
vend_id vendId,
prod_name prodName,
prod_desc prodDesc
FROM Products
AND prod_id = #{prodId}
<if test="prodName != null and prodName != ''">
AND prod_name = #{prodName} </if>
</where></select>
Where标签会去掉第一个and 编译成
SELECT
prod_id prodId,
vend_id vendId,
prod_name prodName,
prod_desc prodDescFROM ProductsWHERE
prod_id = ?AND
prod_name = ?
2.RequestParam标签
使用@RequestParam注解将请求参数绑定至方法参数
即
你可以使用@RequestParam注解将请求参数绑定到你控制器的方法参数上
@RequestParam 有三个属性:
(1)value:请求参数名(必须配置)
(2)required:是否必需,默认为 true,即 请求中必须包含该参数,如果
没有包含,将会抛出异常(可选配置)
(3)defaultValue:默认值,如果设置了该值,required 将自动设为 false,
无论你是否配置了required,配置了什么值,都是 false(可选配置)
具体配置方法:
(1)配置一个属性
@RequestParam("") 或 @RequestParam(value="")
(2)配置多个属性
@RequestParam(value="", required=true, defaultValue="")
- 在写MyBatis查询语句的时候 AS的运用
SELECT
tfi.id,
tfi.unit_id AS unitId, //AS用来使数据库中的列和类中的属性对应
tfi.building_id AS buildingId,
tbi.building_name AS buildingName,
tfi.floor_id AS floorId,
tfi.floor_area AS floorArea,
tfi.floor_pic AS floorPic,
tfi.floor_houseNum AS floorHouseNum
FROM
t_floor_info AS tfi
LEFT JOIN t_building_info AS tbi
ON tfi.building_id=tbi.building_id
WHERE 1=1
AND tfi.building_id=#{buildingId}
AND tfi.unit_id=#{unitId}
AND tfi.floor_id=#{floorId}
4.Java项目中 VO DTO ENTITY
1、entity里的每一个字段,与数据库相对应,
2、dto里的每一个字段,是和你前台页面相对应,
3、VO,这是用来转换从entity到dto,或者从dto到entity的中间的东西。
举个例子:
你的html页面上有三个字段,name,pass,age
你的数据库表里,有两个字段,name,pass(注意没有age哦)而你的dto里,就应该有下面三个(因为对应html页面上三个字段嘛)
private string name;
private string pass;
private string age;
这个时候,你的entity里,就应该有两个(因为对应数据库表中的2个字段嘛)
private string name;
private string pass;
到了这里,好了,业务经理让你做这样一个业务“年龄大于20的才能存入数据库”
这个时候,你就要用到vo了
你要先从页面上拿到dto,然后判断dto中的age是不是大于20,如果大于20,就把dto中的
name和pass拿出来,放到vo中,然后在把vo中的name和pass原封不懂的给entity,然后根据
entity的值,在传入数据库,这就是他们三个的区别
5.thymeleaf中的th表达式
参考链接转载:https://blog.csdn.net/qq_31424825/article/details/79052192
AND https://blog.csdn.net/weixin_41980941/article/details/87339662
6.后端项目编写
今天在师兄给的模块上编写了自己的功能 测试可以跑通 Bingo
7.#app .app