登录示意图
1、dao层(adminDao.java)
public interface AdminDao {
/**
-
登录
-
@param admin
-
@return
*/
public Admin login(Admin admin);
/**
-
注册
-
@param admin
*/
public void register(Admin admin);
}
2、Service层
(1)adminService接口层
public interface AdminService {
/**
-
登录
-
@param admin
-
@return
*/
public Admin login(Admin admin);
/**
-
注册
-
@param admin
*/
public void register(Admin admin);
}
(2)adminServiceImpl实现类
@Service(“adminService”)
@Transactional
public class AdminServiceImpl implements AdminService {
@Autowired
private AdminDao adminDao;
@Override
public Admin login(Admin admin) {
return adminDao.login(admin);
}
@Override
public void register(Admin admin) {
adminDao.register(admin);
}
}
3、功能测试(adminTest)
public class AdminTest {
@Test
public void login(){
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(“applicationContext.xml”);
AdminService adminService = (AdminService) context.getBean(“adminService”);
Admin admin = new Admin(null,null, “王恒杰”, “123456”,true);
Admin login = adminService.login(admin);
System.out.println(login);
}
@Test
public void register(){
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(“applicationContext.xml”);
AdminService adminService = (AdminService) context.getBean(“adminService”);
Admin admin = new Admin(null, “风犬少年”,“邓正武”, “234567”,true);
adminService.register(admin);
}
}
4、Controller层
@Controller(“adminController”)
@RequestMapping(“admin”)
public class AdminController {
/**
- 将adminService到AdminController中
*/
@Autowired
private AdminService adminService;
/**
-
登录
-
@param admin
-
@return
*/
@RequestMapping(“login”)
public String login(Admin admin,HttpServletRequest request){
String password = MD5Utils.md5(admin.getPassword());
admin.setPassword(password);
Admin admin1 = adminService.login(admin);
System.out.println(admin1);
if(admin1!=null){
request.getSession().setAttribute(“admin”,admin1);
return “redirect:/emp/show”;
}
return “redirect:/login.jsp”;
}
/**
-
注册
-
@param admin
*/
@RequestMapping(“register”)
public String register(Admin admin){
String password = MD5Utils.md5(admin.getPassword());
admin.setPassword(password);
adminService.register(admin);
return “redirect:/login.jsp”;
}
/**
-
注销登录
-
@return
*/
@RequestMapping(“destroy”)
public String destroy(HttpServletRequest request){
request.getSession().invalidate();
return “redirect:/login.jsp”;
}
}
==================================================================================
-
员工的增删改查功能
-
员工展示页面
添加员工示意图
修改员工示意图
1、dao层(empDao.java)
public interface EmpDao {
/**
-
添加员工
-
@param emp
*/
public void insert(Emp emp);
/**
-
删除员工
-
@param id
*/
public void deleteById(Integer id);
/**
-
展示员工
-
@return
*/
public List showEmp();
/**
-
修改员工
-
@param emp
*/
public void updateEmp(Emp emp);
/**
-
数据回显
-
@param id
-
@return
*/
public Emp selectEmpById(Integer id);
}
2、Service层
(1)empService接口层
public interface EmpService {
/**
-
添加员工
-
@param emp
*/
public void insert(Emp emp);
/**
-
删除员工
-
@param id
*/
public void deleteById(Integer id);
/**
-
展示员工
-
@return
*/
public List showEmp();
/**
-
修改员工
-
@param emp
*/
public void updateEmp(Emp emp);
/**
-
数据回显
-
@param id
-
@return
*/
public Emp selectEmpById(Integer id);
}
(2)empServiceImpl实现类
@Service(“empService”)
/**
- 控制事务
*/
@Transactional
public class EmpServiceImpl implements EmpService {
/**
- 将empDao注入进@Service组件中
*/
@Autowired
private EmpDao empDao;
public void setEmpDao(EmpDao empDao) {
this.empDao = empDao;
}
@Override
public void insert(Emp emp) {
empDao.insert(emp);
}
@Override
public void deleteById(Integer id) {
empDao.deleteById(id);
}
@Override
@Transactional(propagation = Propagation.SUPPORTS)
public List showEmp() {
return empDao.showEmp();
}
@Override
public void updateEmp(Emp emp) {
empDao.updateEmp(emp);
}
@Override
@Transactional(propagation = Propagation.SUPPORTS)
public Emp selectEmpById(Integer id) {
return empDao.selectEmpById(id);
}
}
3、功能测试(EmpTest)
public class EmpTest {
/**
- 添加员工
*/
@Test
public void insert(){
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(“applicationContext.xml”);
EmpService empService = (EmpService) context.getBean(“empService”);
Emp emp = new Emp(null,“邓正武”,2000d,22);
empService.insert(emp);
}
/**
- 删除员工
*/
@Test
public void deleteById(){
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(“applicationContext.xml”);
EmpService empService = (EmpService) context.getBean(“empService”);
empService.deleteById(4);
}
/**
-
展示员工
-
@return
*/
@Test
public void showEmp(){
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(“applicationContext.xml”);
EmpService empService = (EmpService) context.getBean(“empService”);
List emps = empService.showEmp();
for (Emp emp : emps) {
System.out.println(emp);
}
}
/**
- 修改员工
*/
@Test
public void updateEmp(){
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(“applicationContext.xml”);
EmpService empService = (EmpService) context.getBean(“empService”);
Emp emp = new Emp(3,“邓正武”,38000d,23);
empService.updateEmp(emp);
}
/**
-
数据回显
-
@return
*/
@Test
public void selectEmpById(){
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(“applicationContext.xml”);
EmpService empService = (EmpService) context.getBean(“empService”);
Emp emp = empService.selectEmpById(1);
System.out.println(emp);
}
}
4、Controller层
@Controller(“emoController”)
@RequestMapping(“emp”)
public class EmpController {
/**
- 注入empService在EmpController中
*/
@Autowired
private EmpService empService;
/**
-
添加员工
-
@param emp
*/
@RequestMapping(“insert”)
public String insert(Emp emp){
empService.insert(emp);
return “redirect:/emp/show”;
}
/**
-
删除员工
-
@param emp
*/
@RequestMapping(“delete”)
public String deleteById(Emp emp){
empService.deleteById(emp.getId());
return “redirect:/emp/show”;
}
/**
-
展示员工
-
@return
写在最后
还有一份JAVA核心知识点整理(PDF):JVM,JAVA集合,JAVA多线程并发,JAVA基础,Spring原理,微服务,Netty与RPC,网络,日志,Zookeeper,Kafka,RabbitMQ,Hbase,MongoDB,Cassandra,设计模式,负载均衡,数据库,一致性哈希,JAVA算法,数据结构,加密算法,分布式缓存,Hadoop,Spark,Storm,YARN,机器学习,云计算…
pping(“emp”)
public class EmpController {
/**
- 注入empService在EmpController中
*/
@Autowired
private EmpService empService;
/**
-
添加员工
-
@param emp
*/
@RequestMapping(“insert”)
public String insert(Emp emp){
empService.insert(emp);
return “redirect:/emp/show”;
}
/**
-
删除员工
-
@param emp
*/
@RequestMapping(“delete”)
public String deleteById(Emp emp){
empService.deleteById(emp.getId());
return “redirect:/emp/show”;
}
/**
-
展示员工
-
@return
写在最后
还有一份JAVA核心知识点整理(PDF):JVM,JAVA集合,JAVA多线程并发,JAVA基础,Spring原理,微服务,Netty与RPC,网络,日志,Zookeeper,Kafka,RabbitMQ,Hbase,MongoDB,Cassandra,设计模式,负载均衡,数据库,一致性哈希,JAVA算法,数据结构,加密算法,分布式缓存,Hadoop,Spark,Storm,YARN,机器学习,云计算…
[外链图片转存中…(img-k74MtQso-1714476237522)]