JavaWeb个人学习01

1:@RequestParam(defaultValue = "默认的值") 这个可以在一个参数的前面写上 要是前端不传值进来的话 这个形参就是你定义的默认值

2: slf4j  对应的是日志的输出
log.info("参数是 {}", detail);

3: 分页插件 PageHelper 用法:
准备工作: 引入依赖

        3.1: 设置分页参数: PageHelper.startPage(page, pageSize);
        3.2: 执行查询 
        
        3.3: 封装PageBean对象

4: @DateTimeFormat(pattern = "yyyy-MM-dd") 指定前端传进来的日期的格式

5: 操作数据库 xml配置文件 要与接口名字同包 同名
基本的代码模板:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
  PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

具体的代码演示:
注意:比如查询语句 <select>里面的id 要与接口查询的方法名保持一致 resultType要与返回的数据类型保持一致 但是xml里面写的是全类名 比如: com.findyou.mapper.EmpMapper

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
  PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.example.mapper.EmpMapper">

    <!-- 定义查询所有员工的SQL语句 -->
    <select id="selectAllEmployees" resultType="com.example.model.Employee">
        SELECT * FROM employee;
    </select>

    <!-- 定义根据员工ID查询员工信息的SQL语句 -->
    <select id="selectEmployeeById" parameterType="int" resultType="com.example.model.Employee">
        SELECT * FROM employee WHERE id = #{id};
    </select>

    <!-- 定义插入员工信息的SQL语句 -->
    <insert id="insertEmployee" parameterType="com.example.model.Employee">
        INSERT INTO employee (name, age, department)
        VALUES (#{name}, #{age}, #{department});
    </insert>

    <!-- 定义更新员工信息的SQL语句 -->
    <update id="updateEmployee" parameterType="com.example.model.Employee">
        UPDATE employee
        SET name = #{name}, age = #{age}, department = #{department}
        WHERE id = #{id};
    </update>

    <!-- 定义根据员工ID删除员工信息的SQL语句 -->
    <delete id="deleteEmployee" parameterType="int">
        DELETE FROM employee
        WHERE id = #{id};
    </delete>

</mapper>

动态的写法是:
模糊匹配 查询包含name的

<if test = "name != null">
name like concat ('%', #{name}, '%') 
</if>

6: 批量删除员工:

delete from emp where id in (1, 2, 3);

7:路径参数的接收: 在参数的前面加上 @PathVariable 表示的就是接收路径参数
比如:  localhost:8080/emps/15,16,17 用的是delete的形式

 8: 动态删除员工 <foreach>标签
collection: 要遍历的集合
item: 遍历出来的每一个元素
separator: 你这个集合里面每个元素的分隔符
open: 遍历之前拼接的是什么
close: 遍历之后拼接的是什么
代码演示:

<delete id = "delete"
    delete
    from emp
    where id in
    <foreach collection="ids" item="id" separator="," open="{" close="}">
        #{id}
    </foreach>
</delete>

 9:使用了@RequestBody注解,这样Spring会将请求的body部分转换成参数对象,并注入到参数中供方法使用

10:参数配置化:
application.properties里面写配置信息 比如: aliyun.oss.endpoint=https://oss-cn-hangzhou.aliyuncs.com
然后创建一个实体类 在类里面 定义相关的信息(属性) 注意需要在这个类的上面加上@Component的注解 目的是:通过在类上添加"@Component"注解,Spring框架会自动扫描并识别这个类,将其实例化为一个Bean,并加入到Spring应用上下文中管理。
然后通过@Value注解把之前配置的属性注入 具体的用法为: @Value("${配置文件中的key}")

 11: yml(yaml)配置文件:
在 .properties文件中 servert.port=8080 servert.address=127.0.0.1 但是在yaml文件里面的格式(注意缩进的格式)  #表示的是注释  注意 : 要和value之间 要加个空格

定义数组/List/Set:

hobby:
 - java
 - C
 - game
 - sport

12:配置格式的对比:

13: @ConfiguratonProperties 会自动把配置文件里面的对应的key和你加这个注解的类里面的属性等于相同的value值  在使用 @ConfigurationProperties 注解时,需要指定一个前缀(prefix),这个前缀会与配置文件中的属性名进行匹配,然后将对应的属性值注入到被注解的类的实例中。 但是前提是类里面的属性值要和配置文件里面的key要保持一致 前提还要把这个类交给ioc容器管理 也就是在这个类的前面加上@Component, 同时提供get和set方法 直接在类的前面加上@Data注解就可以了

  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FindYou.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值