The------Forth JAVA关于ssm实现简单数据库查询操作

The------Forth JAVA关于ssm实现简单数据库查询操作

UserContriller类

@RequestMapping("/findAll.do")
        public ModelAndView findAll(){
            List<User> userList = userService.findAll();
            ModelAndView modelAndView = new ModelAndView();
            modelAndView.addObject("userList",userList);
            modelAndView.setViewName("user-list");
            return modelAndView;
        }

UserDao类

  List<User> findAll();

UserService类

   @Override
    public List<User> findAll() {
        return userDao.findAll();
    }

配置文件(SQL语句)

    <select id="findAll" resultType="user">
        select * from tb_user
    </select>

结果截图

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个简单SSM框架实现动态条件的分页查询的示例: 1. 数据库表结构 假设我们有一个名为`user`的表,其中包含以下字段: - `id`: 用户ID - `username`: 用户名 - `age`: 年龄 - `create_time`: 创建时间 2. Mapper接口 我们需要在`mapper`中定义一个查询方法`selectByCondition`,该方法能够根据动态条件进行分页查询。代码如下: ```java public interface UserMapper { List<User> selectByCondition(@Param("username") String username, @Param("startAge") Integer startAge, @Param("endAge") Integer endAge, @Param("startIndex") Integer startIndex, @Param("pageSize") Integer pageSize); } ``` 3. Mapper XML文件 在Mapper接口对应的XML文件中,我们需要编写具体的SQL语句。代码如下: ```xml <select id="selectByCondition" resultType="com.example.User"> SELECT * FROM user <where> <if test="username != null and username != ''"> AND username LIKE CONCAT('%', #{username}, '%') </if> <if test="startAge != null"> AND age >= #{startAge} </if> <if test="endAge != null"> AND age <= #{endAge} </if> </where> ORDER BY create_time DESC LIMIT #{startIndex}, #{pageSize} </select> ``` 4. Service层 在Service层中,我们需要调用Mapper接口中定义的方法,并将查询结果进行处理。代码如下: ```java @Service public class UserServiceImpl implements UserService { @Autowired private UserMapper userMapper; @Override public PageInfo<User> findByCondition(String username, Integer startAge, Integer endAge, Integer pageNum) { // 每页2条记录 int pageSize = 2; // 计算起始位置 int startIndex = (pageNum - 1) * pageSize; // 调用Mapper接口查询数据 List<User> userList = userMapper.selectByCondition(username, startAge, endAge, startIndex, pageSize); // 使用PageInfo对查询结果进行封装 PageInfo<User> pageInfo = new PageInfo<>(userList); return pageInfo; } } ``` 5. Controller层 在Controller层中,我们需要处理前端发送的请求,并调用Service层进行查询。代码如下: ```java @Controller public class UserController { @Autowired private UserService userService; @RequestMapping("/user/list") public String userList(Model model, String username, Integer startAge, Integer endAge, @RequestParam(defaultValue = "1") Integer pageNum) { // 调用Service层查询数据 PageInfo<User> pageInfo = userService.findByCondition(username, startAge, endAge, pageNum); // 将查询结果传递给前端 model.addAttribute("pageInfo", pageInfo); model.addAttribute("username", username); model.addAttribute("startAge", startAge); model.addAttribute("endAge", endAge); return "user-list"; } } ``` 6. JSP文件 最后,在JSP文件中,我们需要显示查询结果,并提供查询条件和分页功能。代码如下: ```jsp <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <html> <head> <title>用户列表</title> </head> <body> <h1>用户列表</h1> <form action="${pageContext.request.contextPath}/user/list" method="get"> <label for="username">用户名:</label> <input type="text" name="username" value="${username}"> <br> <label for="startAge">年龄范围:</label> <input type="number" name="startAge" value="${startAge}"> - <input type="number" name="endAge" value="${endAge}"> <br> <button type="submit">查询</button> </form> <table border="1"> <tr> <th>ID</th> <th>用户名</th> <th>年龄</th> <th>创建时间</th> </tr> <c:forEach items="${pageInfo.list}" var="user"> <tr> <td>${user.id}</td> <td>${user.username}</td> <td>${user.age}</td> <td>${user.createTime}</td> </tr> </c:forEach> </table> <div> <c:if test="${pageInfo.hasPreviousPage}"> <a href="${pageContext.request.contextPath}/user/list?pageNum=${pageInfo.prePage}&username=${username}&startAge=${startAge}&endAge=${endAge}">上一页</a> </c:if> <c:if test="${pageInfo.hasNextPage}"> <a href="${pageContext.request.contextPath}/user/list?pageNum=${pageInfo.nextPage}&username=${username}&startAge=${startAge}&endAge=${endAge}">下一页</a> </c:if> </div> </body> </html> ``` 以上就是一个简单SSM框架实现动态条件的分页查询的示例。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值