栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

idea中的SSM框架整合详细教程(需要源码学习 私信)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

idea中的SSM框架整合详细教程(需要源码学习 私信)

项目结构

建立对应的数据库

pom.xml中的依赖关系






  4.0.0
  war

  ssm-bookbuild
  cn.yl
  ssm-bookbuild
  1.0-SNAPSHOT
  
    
    
      junit
      junit
      4.12
    
    
    
      mysql
      mysql-connector-java
      8.0.22
    
    
    
      com.mchange
      c3p0
      0.9.5.2
    

    
    
      javax.servlet
      servlet-api
      2.5
    
    
      javax.servlet.jsp
      jsp-api
      2.2
    
    
      javax.servlet
      jstl
      1.2
    

    
    
      org.mybatis
      mybatis
      3.5.2
    
    
      org.mybatis
      mybatis-spring
      2.0.2
    

    
    
      org.springframework
      spring-context
      5.2.1.RELEASE
    
    
    
      org.springframework
      spring-webmvc
      5.2.5.RELEASE
    

    
      org.projectlombok
      lombok
      RELEASE
      compile
    

    
    
      org.springframework
      spring-webmvc
      5.2.5.RELEASE
    
    
      org.springframework
      spring-jdbc
      5.2.5.RELEASE
    

  

  
    
      
        src/main/java
        
          ***.xml
        
        false
      
      
        src/main/resources
        
          ***.xml
        
        false
      
    

  
    
    
      
      
        org.apache.maven.plugins
        maven-compiler-plugin
        
        3.1
        
          1.8
          1.8
          utf-8
        
      
      
      
        org.apache.tomcat.maven
        tomcat7-maven-plugin
        2.1
        
          
          80
          
          /
          
          UTF-8
          true
        
      
    
  
    




在这里插入代码片

结构的基本结构和框架配置

  1. controller
  2. pojo
  3. dao
  4. service
  5. mybatis-config.xml
  6. applicationContext.xml

关于Mybtais层编写

数据库配置database.properties

jdbc.driverClass=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/ssmbuild?useUnicode=true&characterEncoding=gbk&useSSL=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Hongkong
jdbc.username=root
jdbc.password=123456

此处对应的的数据库 8+ 的需要加入对应的时区

对应的MyBatis核心配置文件

    
        
    
    
        
    

加入对应的实体类

public class Books {

    private int bookID;
    private String bookName;
    private int bookCounts;
    private String detail;


    public Books(int bookID, String bookName, int bookCounts, String detail) {
        this.bookID = bookID;
        this.bookName = bookName;
        this.bookCounts = bookCounts;
        this.detail = detail;
    }

    public Books() {
    }

    public int getBookID() {
        return bookID;
    }

    public void setBookID(int bookID) {
        this.bookID = bookID;
    }

    public String getBookName() {
        return bookName;
    }

    public void setBookName(String bookName) {
        this.bookName = bookName;
    }

    public int getBookCounts() {
        return bookCounts;
    }

    public void setBookCounts(int bookCounts) {
        this.bookCounts = bookCounts;
    }

    public String getDetail() {
        return detail;
    }

    public void setDetail(String detail) {
        this.detail = detail;
    }

    @Override
    public String toString() {
        return "Books{" +
                "bookID=" + bookID +
                ", bookName='" + bookName + ''' +
                ", bookCounts=" + bookCounts +
                ", detail='" + detail + ''' +
                '}';
    }
}

Dao层的Mapper接口
其中的使用@param可以和BookMapper.xml配置中的#{xxx} 对应

public interface BookMapper {

    //增加一本书
    int addBook(Books books);

    //删除一本书
    int deleteBookById(@Param("bookID") Integer id);

    //更新一本书
    int updateBook(Books book);

    //查询一本书 @Param("bookID")
    Books queryBookById( Integer id);

    //查询全部的书
    List queryAllBook();

}

编写接口对应的 Mapper.xml 文件。需要导入MyBatis的包






    
    
        insert into ssmbuild.books(bookName,bookCounts,detail)
        values (#{bookName}, #{bookCounts}, #{detail})
    

    
    
        delete from ssmbuild.books where bookID=#{bookID}
    

    
    
        update ssmbuild.books
        set bookName = #{bookName},bookCounts = #{bookCounts},detail = #{detail}
        where bookID = #{bookID}
    

    
    
        SELECT * from ssmbuild.books
    


编写Service层的接口和实现类

//BookService:底下需要去实现,调用dao层
public interface BookService {
            //增加一个Book
            int addBook(Books book);

            //根据id删除一个Book
            int deleteBookById(Integer id);

            //更新Book
            int updateBook(Books books);

            //根据id查询,返回一个Book
            Books queryBookById(Integer id);

            //查询全部Book,返回list集合
            List queryAllBook();
}

public class BookServiceImpl implements BookService {

    //  调用dao层的操作  设置一个set接口  方便spring管理
    private BookMapper bookMapper;

    //  构造方法
    public void setBookMapper(BookMapper bookMapper) {
        this.bookMapper = bookMapper;
    }

    public int addBook(Books book) {
        return  bookMapper.addBook(book);
    }

    public int deleteBookById(Integer id) {
        return bookMapper.deleteBookById(id);
    }

    public int updateBook(Books book) {
        return bookMapper.updateBook(book);
    }

    public Books queryBookById(Integer id) {
        return bookMapper.queryBookById(id);
    }

    public List queryAllBook() {
        return bookMapper.queryAllBook();
    }

}

配置Spring整合MyBatis,c3p0连接池;
Spring整合Mybatis的相关的配置文件;spring-dao.xml




    
    
    

    
    
    
        
        
        
        
        

        
        
        
        
        
        
    

    
    
        
        
        
        
    

    
    
    
        
            
        
        
    


Spring整合service层 配置文件spring-service.xml

    
    

    
    
        
    

    
    
        
        
    

SpringMVC层
web.xml

    
    
        DispatcherServlet
        org.springframework.web.servlet.DispatcherServlet
        
            contextConfigLocation
            
            classpath:applicationContext.xml
        
        1
    
    
        DispatcherServlet
        /
    

    
    
        encodingFilter
        
            org.springframework.web.filter.CharacterEncodingFilter
        
        
            encoding
            utf-8
        
    
    
        encodingFilter
        /*
    

    
    
        15
    

spring-mvc.xml


    
    


    

        
        
    



    

    

Spring配置整合文件,applicationContext.xml


    
    
    

Controller层

@Controller
@RequestMapping("/book")
public class BookController {

    @Autowired
    @Qualifier("BookServiceImpl")
    private BookService bookService;

    @RequestMapping("/allBook")
    public String list(Model model) {
        List list = bookService.queryAllBook();
        model.addAttribute("list", list);
        System.out.println("成功进入addPaper");
        return "allBook";
    }

    @RequestMapping("/toAddBook")
    public String toAddPaper() {
        return "addBook";
    }

    @RequestMapping("/addBook")
    public String addPaper(Books books) {
        System.out.println("成功进入addPaper");
        bookService.addBook(books);
        return "redirect:/book/allBook";
    }

//    @RequestMapping("/toUpdateBook/{id}")
//    public String toUpdateBook( @PathVariable Integer id,Model model  ) {
//        System.out.println("toUpdateBook此处的id:"+id);
//        Books books = bookService.queryBookById(id);
//        System.out.println("成功进入toUpdateBook");
//        System.out.println(books);
//        model.addAttribute("book",books );
//        return "updateBook";
//    }

//    @RequestMapping(value = "/toUpdateBook/{id}", method = RequestMethod.GET)
        @RequestMapping("/toUpdateBook/{id}")
//        @RequestMapping("/toUpdateBook")
        public String toUpdateBook(Model model,@PathVariable("id") Integer id){
                    System.out.println("toUpdateBook此处的id:"+id);
        Books books = bookService.queryBookById(id);
        System.out.println(books);
        model.addAttribute("books",books);
        return "updateBook";
    }

    @RequestMapping("/updateBook")
    public String updateBook(Model model, Books book) {
        System.out.println("成功进入updateBook");
        System.out.println("此处的book数据:" +book);
        System.out.println("update此处的id值:" + book.getBookID());

        bookService.updateBook(book);
        Books book1 = bookService.queryBookById(book.getBookID());
        System.out.println("此处的book数据:" +book1);
        model.addAttribute("books", book1);
        return "redirect:/book/allBook";
    }

    @RequestMapping("/del/{bookId}")
    public String deleteBook(@PathVariable("bookId") Integer id) {
        bookService.deleteBookById(id);
        return "redirect:/book/allBook";
    }

}

ssm的整合 到这里就差不多了
前台页面展示


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/362184.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号