ssm使用全注解实现增删改查案例——EmpController

package org.action;


import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.entity.Emp;
import org.service.IDeptService;
import org.service.IEmpService;
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;

/**
 * 
*    
* 项目名称:test_myabtis_zhujie   
* 类名称:EmpController   
* 类描述:   Emp表的控制器
* 创建人:Mu Xiongxiong  
* 创建时间:2018-3-16 下午4:23:20   
* 修改人:Mu Xiongxiong   
* 修改时间:2018-3-16 下午4:23:20   
* 修改备注:   
* @version    
*
 */
@Controller
public class EmpController {

    //初始化Emp表的Service
    @Autowired
    private IEmpService empService;
    //初始化Dept表的Service
    @Autowired
    private IDeptService deptService;

    /**
     * 
    * @Description: 该方法的主要作用:查询全部员工信息
    * @Title: findEmpAll
    * @param  @return 设定文件  
    * @return  返回类型:ModelAndView   
    * @throws
     */
    @RequestMapping("findEmpAll")
    public ModelAndView findEmpAll(){
        ModelAndView modelAndView = new ModelAndView();
        modelAndView.addObject("empList",empService.findEmpAll());
        modelAndView.setViewName("showEmp");
        return modelAndView;
    }

    /**
     * 
    * @Description: 该方法的主要作用:根据id查询信息
    * @Title: findEmpbyId
    * @param  @param id
    * @param  @return 设定文件  
    * @return  返回类型:ModelAndView   
    * @throws
     */
    @RequestMapping("findEmpById")
    public ModelAndView findEmpbyId(int id){
        ModelAndView modelAndView = new ModelAndView();
        modelAndView.addObject("emp",empService.selectByPrimaryKey(id));
        modelAndView.addObject("deptList",deptService.findDeptAll());
        modelAndView.setViewName("updateEmp");
        return modelAndView;
    }

    /**
     * 
    * @Description: 该方法的主要作用:修改员工信息
    * @Title: updateEmp
    * @param  @param emp
    * @param  @param date
    * @param  @return 设定文件  
    * @return  返回类型:ModelAndView   
    * @throws
     */
    @RequestMapping("updateEmp")
    public ModelAndView updateEmp(Emp emp,String date){
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        try {
        Date date_strDate = format.parse(date); 
            emp.setEdate(date_strDate);
        } catch (Exception e) {
            e.printStackTrace();
        }
        empService.updateByPrimaryKey(emp);
        return new ModelAndView("redirect:/findEmpAll.do");
    }

    /**
     * 
    * @Description: 该方法的主要作用:查询全部部门列表
    * @Title: preSaveEmp
    * @param  @return 设定文件  
    * @return  返回类型:ModelAndView   
    * @throws
     */
    @RequestMapping("preSaveEmp")
    public ModelAndView preSaveEmp(){
        ModelAndView modelAndView = new ModelAndView();
        modelAndView.addObject("deptList",deptService.findDeptAll());
        modelAndView.setViewName("saveEmp");
        return modelAndView;
    }

    /**
     * 
    * @Description: 该方法的主要作用:添加部门信息
    * @Title: saveEmp
    * @param  @param emp
    * @param  @param date
    * @param  @return 设定文件  
    * @return  返回类型:ModelAndView   
    * @throws
     */
    @RequestMapping("saveEmps")
    public ModelAndView saveEmp(Emp emp,String date){
        int id = ((Long)(System.currentTimeMillis())).intValue();
        emp.setEid(id);
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        Date edate;
        try {
            edate = format.parse(date);
            emp.setEdate(edate);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        empService.insert(emp);
        return new ModelAndView("redirect:/findEmpAll.do");
    }

    /**
     * 
    * @Description: 该方法的主要作用:删除员工信息
    * @Title: delEmp
    * @param  @param eid
    * @param  @return 设定文件  
    * @return  返回类型:ModelAndView   
    * @throws
     */
    @RequestMapping("delEmp")
    public ModelAndView delEmp(int eid){
        empService.deleteByPrimaryKey(eid);
        return new ModelAndView("redirect:/findEmpAll.do");
    }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,下面我就给你介绍一下如何使用 SSM 框架来实现简单的增删改查。 首先,你需要准备好开发环境,包括 JDK、MySQL 数据库、Maven 和 Eclipse 等软件。接下来,按照以下步骤进行操作: 1. 创建一个 Maven 项目,在 pom.xml 文件中添加 SSM 框架的依赖: ``` <dependencies> <!-- Spring --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.2.6.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>5.2.6.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.2.6.RELEASE</version> </dependency> <!-- MyBatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.4</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.4</version> </dependency> <!-- MySQL Connector --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.22</version> </dependency> </dependencies> ``` 2. 创建数据库表,例如: ``` CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `age` int(11) NOT NULL, `email` varchar(50) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4; ``` 3. 创建 JavaBean,例如: ``` public class User { private int id; private String name; private int age; private String email; // 省略 getter 和 setter 方法 } ``` 4. 创建 Mapper 接口和 XML 文件,例如: ``` public interface UserMapper { void addUser(User user); void deleteUser(int id); void updateUser(User user); User getUserById(int id); List<User> getAllUsers(); } ``` ``` <?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.UserMapper"> <insert id="addUser" parameterType="User"> INSERT INTO `user` (`name`, `age`, `email`) VALUES (#{name}, #{age}, #{email}) </insert> <delete id="deleteUser" parameterType="int"> DELETE FROM `user` WHERE `id` = #{id} </delete> <update id="updateUser" parameterType="User"> UPDATE `user` SET `name` = #{name}, `age` = #{age}, `email` = #{email} WHERE `id` = #{id} </update> <select id="getUserById" parameterType="int" resultType="User"> SELECT * FROM `user` WHERE `id` = #{id} </select> <select id="getAllUsers" resultType="User"> SELECT * FROM `user` </select> </mapper> ``` 5. 创建 Service 接口和实现类,例如: ``` public interface UserService { void addUser(User user); void deleteUser(int id); void updateUser(User user); User getUserById(int id); List<User> getAllUsers(); } ``` ``` @Service public class UserServiceImpl implements UserService { @Autowired private UserMapper userMapper; @Override public void addUser(User user) { userMapper.addUser(user); } @Override public void deleteUser(int id) { userMapper.deleteUser(id); } @Override public void updateUser(User user) { userMapper.updateUser(user); } @Override public User getUserById(int id) { return userMapper.getUserById(id); } @Override public List<User> getAllUsers() { return userMapper.getAllUsers(); } } ``` 6. 创建 Controller 类,例如: ``` @RestController @RequestMapping("/user") public class UserController { @Autowired private UserService userService; @PostMapping("/add") public void addUser(@RequestBody User user) { userService.addUser(user); } @DeleteMapping("/delete/{id}") public void deleteUser(@PathVariable int id) { userService.deleteUser(id); } @PutMapping("/update") public void updateUser(@RequestBody User user) { userService.updateUser(user); } @GetMapping("/get/{id}") public User getUserById(@PathVariable int id) { return userService.getUserById(id); } @GetMapping("/getall") public List<User> getAllUsers() { return userService.getAllUsers(); } } ``` 7. 配置 Spring 和 MyBatis,例如: ``` @Configuration @MapperScan("com.example.mapper") public class AppConfig { @Bean public DataSource dataSource() { DriverManagerDataSource dataSource = new DriverManagerDataSource(); dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver"); dataSource.setUrl("jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai"); dataSource.setUsername("root"); dataSource.setPassword("password"); return dataSource; } @Bean public SqlSessionFactoryBean sqlSessionFactory() throws Exception { SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean(); sessionFactory.setDataSource(dataSource()); return sessionFactory; } @Bean public DataSourceTransactionManager transactionManager() { return new DataSourceTransactionManager(dataSource()); } } ``` 最后,运行项目,访问 http://localhost:8080/user/getall 可以看到所有的用户信息。你可以根据需要修改代码,实现更多功能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

穆雄雄

哎,貌似还没开张来着呢~

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

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

打赏作者

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

抵扣说明:

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

余额充值