Java web第五次作业

1.在idea中配置好数据源

2、视频案例中只给出了查询所有结果的示例,请自己完成添加、删除、修改操作的代码。以下供参

考。

@Delete("delete from emp where id=#{id}")

public void delete(Integer id);

测试代码

@Test

public void testDelete(){

empMapper.delete(17);

}

@Insert("insert into emp(username, name, gender, image, job, entrydate, dept_id, create_time, update_time)" +

"values (#{username},#{name},#{gender},#{image},#{job},#{entrydate},#{deptId},#{createTime},#{updateTime})")

public void insert(Emp emp);

测试代码

@Test

public void testInsert(){

Emp emp=new Emp();

emp.setUsername("Tom");

emp.setName("汤姆");

emp.setImage("1.jpg");

emp.setGender((short)1);

emp.setJob((short)1);

emp.setEntrydate(LocalDate.of(2000,1,1));

emp.setCreateTime(LocalDateTime.now());

emp.setUpdateTime(LocalDateTime.now());

emp.setDeptId(1);

empMapper.insert(emp);

}

@Update("update emp set username=#{username},name=#{name},gender=#{gender}," +

"image=#{image},job=#{job},entrydate=#{entrydate},dept_id=#{deptId},update_time=#{updateTime} where id=#{id}")

public void update(Emp emp);

测试代码

@Test

public void testUpdate(){

Emp emp=new Emp();

emp.setId(17);

emp.setUsername("Tom1");

emp.setName("汤姆1");

emp.setImage("1.jpg");

emp.setGender((short)1);

emp.setJob((short)1);

emp.setEntrydate(LocalDate.of(2000,1,1));

emp.setUpdateTime(LocalDateTime.now());

emp.setDeptId(1);

empMapper.update(emp);

}

@Select("select * from emp where name like '%${name}%' and gender =#{gender} and " +

"entrydate between #{begin} and #{end} order by update_time desc")

public List<Emp> list(String name, Short gender, LocalDate begin,LocalDate end);

测试代码

@Test

public void testList(){

empMapper.list("张",(short)1,LocalDate.of(2010,1,1),LocalDate.of(2020,1,1));

System.out.println(empList);

}

3、lombok库的使用。尝试将实体类采用注解的方式来实现。

import lombok.*;

//@Getter

//@Setter

//@ToString

//@EqualsAndHashCode

@Data

@NoArgsConstructor

@AllArgsConstructor

public class User {

private Integer id;

private String name;

private Short age;

private Short gender;

private String phone;

4、学习idea的调试技巧,并尝试使用。

5、对以下案例使用mybatis进行添加、删除、修改、更新的操作。

@Mapper

public interface PoetMapper {

@Delete("delete from poet where id=#{id}")

public void delete(Integer id);

@Insert("insert into poet(name,gender,dynasty,title,style)" +

"values (#{name},#{gender},#{dynasty},#{title},#{style})")

public void insert(Poet poet);

@Update("update poet set name=#{name},gender=#{gender}," +

"dynasty=#{dynasty},title=#{title},style=#{style} where id=#{id}")

public void update(Poet poet);

}

测试代码

@SpringBootTest

class SpringbootMybatisCrudApplicationTests {

@Autowired

private PoetMapper poetMapper;

@Test

public void testInsert(){

Poet poet=new Poet();

poet.setName("汤姆");

poet.setGender((short)1);

poet.setDynasty("元代");

poet.setTitle("诗词爱好者");

poet.setStyle("无");

poetMapper.insert(poet);

}

@Test

public void testDelete(){

poetMapper.delete(7);

}

@Test

public void testUpdate(){

Poet poet=new Poet();

poet.setId(18);

poet.setName("汤姆1");

poet.setGender((short)1);

poet.setDynasty("清代");

poet.setTitle("无");

poet.setStyle("无");

poetMapper.update(poet);

}

相关推荐
zhangphil几秒前
Kotlin高阶函数作为参数与Java普通接口interface等效性
java·kotlin
2601_94981809几秒前
记录 idea 启动 tomcat 控制台输出乱码问题解决
java·tomcat·intellij-idea
爱丽_1 分钟前
缓存一致性:Cache Aside、双删/延迟双删、穿透/击穿/雪崩与 CDC
java·spring·缓存
桌面运维家2 分钟前
MySQL安全实战:慢查询诊断与SQL注入防御
sql·mysql·安全
okiseethenwhat2 分钟前
反射在 JVM 层面的实现原理
开发语言·jvm·python
majingming1233 分钟前
接口的嵌入式实现
java·后端·spring
eEKI DAND3 分钟前
Spring Boot 3.3.4 升级导致 Logback 之前回滚策略配置不兼容问题解决
java·spring boot·logback
-Da-4 分钟前
【ai应用开发日记】通用未注入Bean AI提示词
java·数据库·人工智能·spring boot·sqlserver
黑马源码库miui520866 分钟前
JAVA国际版同城上门服务上门送水桶装水配送源码同城上门配送系统源码支持Android+IOS+H5
android·java·ios
xdscode8 分钟前
Spring AI 中的 Flux 与 SSE:流式输出完全解析
java·flux·sse·springai·stream流式输出