From 7cf76d58bf5f8fda9358b9145bd1e8cd82934902 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=8F=AD=E9=98=B3=E4=B8=BD?= <2431466589@qq.com> Date: Thu, 11 Jan 2024 23:37:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...37\345\256\214\345\226\204\347\211\210.md" | 346 ++++++++++++++++++ 1 file changed, 346 insertions(+) create mode 100644 "37 \346\217\255\351\230\263\344\270\275/20240111 \345\233\276\344\271\246\347\256\241\347\220\206\347\263\273\347\273\237\345\256\214\345\226\204\347\211\210.md" diff --git "a/37 \346\217\255\351\230\263\344\270\275/20240111 \345\233\276\344\271\246\347\256\241\347\220\206\347\263\273\347\273\237\345\256\214\345\226\204\347\211\210.md" "b/37 \346\217\255\351\230\263\344\270\275/20240111 \345\233\276\344\271\246\347\256\241\347\220\206\347\263\273\347\273\237\345\256\214\345\226\204\347\211\210.md" new file mode 100644 index 0000000..febb22f --- /dev/null +++ "b/37 \346\217\255\351\230\263\344\270\275/20240111 \345\233\276\344\271\246\347\256\241\347\220\206\347\263\273\347\273\237\345\256\214\345\226\204\347\211\210.md" @@ -0,0 +1,346 @@ +## config包 + +### JdbcConfig + +```java +package com.mdd.config; + +import com.alibaba.druid.pool.DruidDataSource; +import org.springframework.context.annotation.Bean; + +import javax.sql.DataSource; + +public class JdbcConfig { + @Bean + public DataSource dataSource(){ + DruidDataSource ds = new DruidDataSource(); + ds.setDriverClassName("com.mysql.cj.jdbc.Driver"); + ds.setUrl("jdbc:mysql:///ssm"); + ds.setUsername("root"); + ds.setPassword("123456"); + return ds; + } +} + +``` + +### MybatisConfig + +```java +package com.mdd.config; + +import org.mybatis.spring.SqlSessionFactoryBean; +import org.mybatis.spring.mapper.MapperScannerConfigurer; +import org.springframework.context.annotation.Bean; + +import javax.sql.DataSource; + +public class MybatisConfig { + @Bean + public SqlSessionFactoryBean sqlSessionFactoryBean(DataSource dataSource){ + SqlSessionFactoryBean ssfb = new SqlSessionFactoryBean(); + ssfb.setDataSource(dataSource); + ssfb.setTypeAliasesPackage("com.mdd.domain"); + return ssfb; + + } + @Bean + public MapperScannerConfigurer mapperScannerConfigurer(){ + MapperScannerConfigurer msc = new MapperScannerConfigurer(); + msc.setBasePackage("com.mdd.mapper"); + return msc; + } +} + +``` + +### SpringConfig + +```java +package com.mdd.config; + + +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Import; + +@Configuration +@ComponentScan({"com.mdd.service","com.mdd.mapper"}) +@Import({JdbcConfig.class, MybatisConfig.class}) +public class SpringConfig { +} + +``` + +### SpringMvcConfig + +```java +package com.mdd.config; + + +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.EnableWebMvc; +import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +@Configuration +@ComponentScan("com.mdd.controller") +@EnableWebMvc +public class SpringMvcConfig implements WebMvcConfigurer { + @Override + public void addResourceHandlers(ResourceHandlerRegistry registry){ + registry.addResourceHandler("/index.html").addResourceLocations("/index.html"); + + } +} + +``` + +### WebConfig + +```java +package com.mdd.config; + +import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer; + +public class WebConfig extends AbstractAnnotationConfigDispatcherServletInitializer { + + @Override + protected Class[] getRootConfigClasses() { + return new Class[]{SpringConfig.class}; + } + + @Override + protected Class[] getServletConfigClasses() { + return new Class[]{SpringMvcConfig.class}; + } + + @Override + protected String[] getServletMappings() { + return new String[]{"/"}; + } +} + +``` + +## controller包 + +### BookController + +```java +package com.mdd.controller; + + +import com.mdd.domain.Book; +import com.mdd.service.BookService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@RestController +@RequestMapping("/books") +public class BookController { + @Autowired + private BookService bookService; + //查所有 + @GetMapping + public List getAll(){ + return bookService.getAll(); + } + //添加 + @PostMapping + public void addBook(@RequestBody Book book){ + bookService.addBook(book); + } + //修改 + @PutMapping + public void updateBook(@RequestBody Book book){ + bookService.updateBook(book); + } + //根据id查询 + @GetMapping("/{id}") + public Book getById(@PathVariable Integer id){ + return bookService.getById(id); + } + //根据ID删除 + @DeleteMapping("/{id}") + public void delById(@PathVariable Integer id){ + bookService.delById(id); + } + +} + +``` + +## domain包 + +### Book + +```java +package com.mdd.domain; + +public class Book { + private Integer id; + private String bookName; + private String author; + private String publisher; + + public Book() { + } + + public Book(Integer id, String bookName, String author, String publisher) { + this.id = id; + this.bookName = bookName; + this.author = author; + this.publisher = publisher; + } + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getBookName() { + return bookName; + } + + public void setBookName(String bookName) { + this.bookName = bookName; + } + + public String getAuthor() { + return author; + } + + public void setAuthor(String author) { + this.author = author; + } + + public String getPublisher() { + return publisher; + } + + public void setPublisher(String publisher) { + this.publisher = publisher; + } + + @Override + public String toString() { + return "Book{" + + "id=" + id + + ", bookName='" + bookName + '\'' + + ", author='" + author + '\'' + + ", publisher='" + publisher + '\'' + + '}'; + } +} + +``` + +## mapper包 + +### BookMapper端口 + +```java +package com.mdd.mapper; + +import com.mdd.domain.Book; +import org.apache.ibatis.annotations.Delete; +import org.apache.ibatis.annotations.Insert; +import org.apache.ibatis.annotations.Select; +import org.apache.ibatis.annotations.Update; + +import java.util.List; + +public interface BookMapper { + @Select("select id, book_name bookName, author, publisher from tb_book ") + List getAll(); + @Insert("insert into tb_book (book_name, author, publisher) values (#{bookName}, #{author}, #{publisher});") + void addBook(Book book); + @Update("update tb_book set book_name=#{bookName},author=#{author},publisher=#{publisher} where id = #{id};") + void updateBook(Book book); + @Select("select id, book_name bookName, author, publisher from tb_book where id=#{id}") + Book getById(Integer id); + @Delete("delete from tb_book where id=#{id};") + void delById(Integer id); + + +} + +``` + +## service包/impl + +### BookService端口 + +```java +package com.mdd.service; + +import com.mdd.domain.Book; + +import java.util.List; + +public interface BookService { + List getAll(); + void addBook(Book book); + void updateBook(Book book); + Book getById(Integer id); + void delById(Integer id); + +} + +``` + +### impl包 + +#### BookServiceImpl + +```java +package com.mdd.service.impl; + + +import com.mdd.domain.Book; +import com.mdd.mapper.BookMapper; +import com.mdd.service.BookService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class BookServiceImpl implements BookService { + @Autowired + private BookMapper bookMapper; + public List getAll(){ + return bookMapper.getAll(); + + } + + + public void addBook(Book book) { + bookMapper.addBook(book); + } + + + public void updateBook(Book book) { + bookMapper.updateBook(book); + } + + + public Book getById(Integer id) { + return bookMapper.getById(id); + } + + + public void delById(Integer id) { + bookMapper.delById(id); + } +} + +``` + -- Gitee