【JAVA】ssm框架搭建注册实现
前言Java包controller下的UserController.javadao下的UserDao.javaserviceUserService.javaImpl下的UserServiceImpl.java
resources包mapper下的UserMapper.xml
webapp包index.jspfailure.jspmain.jspmodify.jsp
效果图
前言
Java项目实习第七次课后作业:第六次课后续,实现修改、定向查询功能。 此博客是前面课的后续,其余内容请看一下链接: 第五次课 第六次课
Java包
controller下的UserController.java
package com
.zr0701
.controller
;
import com
.zr0701
.bean
.User
;
import com
.zr0701
.service
.UserService
;
import org
.springframework
.beans
.factory
.annotation
.Autowired
;
import org
.springframework
.stereotype
.Controller
;
import org
.springframework
.web
.bind
.annotation
.RequestMapping
;
import org
.springframework
.web
.servlet
.ModelAndView
;
import java
.util
.List
;
@Controller
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService
;
@RequestMapping("/findAll.do")
public ModelAndView
findAll(@RequestParam(value
= "name",defaultValue
= "")String name
){
ModelAndView modelAndView
= new ModelAndView();
List
<User> userList
= userService
.searchByName(name
);
System
.out
.println("userList中的内容为:" + userList
);
modelAndView
.addObject("userList",userList
);
modelAndView
.setViewName("../main");
System
.out
.println("modeAndView中的内容为:" + modelAndView
);
return modelAndView
;
}
@RequestMapping("/findById.do")
public String
findById(int id
, Model model
){
User user
= userService
.findById(id
);
model
.addAttribute("user",user
);
return "../modify";
}
@RequestMapping("/update.do")
public String
update(User user
){
boolean upd
= userService
.update(user
);
if(upd
){
return "redirect:findAll.do";
}
return "../failure";
}
}
dao下的UserDao.java
package com
.zr0701
.dao
;
import com
.zr0701
.bean
.User
;
import java
.util
.List
;
public interface UserDao {
int update(User user
);
User
findUserById(Integer id
);
List
<User> searchByName(String name
);
}
service
UserService.java
package com
.zr0701
.service
;
import com
.zr0701
.bean
.User
;
import java
.util
.List
;
public interface UserService {
User
findById(Integer id
);
boolean update(User user
);
List
<User> searchByName(String name
);
}
Impl下的UserServiceImpl.java
package com
.zr0701
.service
.Impl
;
import com
.zr0701
.bean
.User
;
import com
.zr0701
.dao
.UserDao
;
import com
.zr0701
.service
.UserService
;
import org
.springframework
.beans
.factory
.annotation
.Autowired
;
import org
.springframework
.stereotype
.Service
;
import java
.util
.List
;
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserDao userDao
;
@Override
public User
findById(Integer id
) {
return userDao
.findUserById(id
);
}
@Override
public boolean update(User user
) {
int upd
= userDao
.update(user
);
if(upd
>0){
return true;
}else {
return false;
}
}
@Override
public List
<User> searchByName(String name
){
return userDao
.searchByName(name
);
}
}
resources包
mapper下的UserMapper.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" >
<mapper namespace
="com.zr0701.dao.UserDao">
<select id
="findUserById" parameterType
="Integer" resultType
="User">
select
* from user where id
=#
{id
}
</select
>
<update id
="update" parameterType
="User">
update user set name
=#
{name
},password
=#
{password
} where id
=#
{id
}
</update
>
<select id
="searchByName" parameterType
="String" resultType
="User">
select
* from user where name like
concat('%',#
{name
},'%');
</select
>
</mapper
>
webapp包
index.jsp
<%@ page contentType
="text/html;charset=UTF-8" language
="java" %>
<html>
<head>
<title>$Title$
</title
>
</head
>
<body>
<h1>登录页面
</h1
>
<form action
="/user/login.do" method
="post">
name
:<input name
="name" type
="text">
password
:<input name
="password" type
="password">
<input type
="submit" value
="login">
</form
>
<a href
="/add.jsp">添加
</a
>
<a href
="/user/findAll.do?name=">查看数据
</a
>
</body
>
</html
>
failure.jsp
<%@ page contentType
="text/html;charset=UTF-8" language
="java" %>
<html>
<head>
<title>失败
</title
>
</head
>
<body>
<h1>失败
</h1
>
</body
>
</html
>
main.jsp
<%@ page contentType
="text/html;charset=UTF-8" language
="java" %>
<html>
<head>
<title>列表
</title
>
</head
>
<body>
<div>
<form>
<input id
="name" type
="search" name
="name" value
="${name}">
<button onclick
="form.submit()">搜索
</button
>
</form
>
<table>
<thead>
<tr>
<th>ID
</th
>
<th>用户名
</th
>
<th>密码
</th
>
<th>操作
</th
>
</tr
>
</thead
>
<tbody>
<c
:forEach items
="${userList}" var
="user">
<tr>
<td>$
{user
.id
}</td
>
<td>$
{user
.name
}</td
>
<td>$
{user
.password
}</td
>
<td>
<a href
="${pageContext.request.contextPath}/user/delete.do?id=${user.id}">删除
</a
>
<a href
="${pageContext.request.contextPath}/user/findById.do?id=${user.id}">修改
</a
>
</td
>
</tr
>
</c
:forEach
>
</tbody
>
</table
>
</div
>
</body
>
</html
>
modify.jsp
<%@ page contentType
="text/html;charset=UTF-8" language
="java" %>
<html>
<head>
<title>修改
</title
>
</head
>
<body>
<div>
<form action
="/user/update.do">
<input name
="id" value
="${user.id}" type
="hidden">
<div>
<label
for="name">用户名:
</label
>
<input name
="name" type
="text" id
="name" value
="${user.name}">
</div
>
<div>
<label
for="password">密码:
</label
>
<input name
="password" type
="text" id
="password" value
="${user.password}">
</div
>
<div>
<input type
="submit" value
="提交">
</div
>
<a href
="javascript:window.history.go(-1)">返回
</a
>
</form
>
</div
>
</body
>
</html
>
效果图
输入54,点击搜索,出现数据 点击修改 修改后第二条数据密码变为82