From b14adfa3cf0c0ec7977128d1d7873f046aa6ed20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B9=B2=E7=BA=AF=E6=AC=A3?= <1759931586@qq.com> Date: Sun, 29 Dec 2024 14:15:37 +0800 Subject: [PATCH] 20241127 --- .../SSM\347\254\224\350\256\260.md" | 85 ++++++++++++ .../untitled4/.gitignore" | 38 ++++++ .../untitled4/.idea/.gitignore" | 8 ++ .../untitled4/.idea/dataSources.xml" | 17 +++ .../untitled4/.idea/encodings.xml" | 7 + .../untitled4/.idea/misc.xml" | 14 ++ .../untitled4/.idea/sqldialects.xml" | 7 + .../untitled4/.idea/uiDesigner.xml" | 124 ++++++++++++++++++ .../untitled4/pom.xml" | 103 +++++++++++++++ .../main/java/com/cx/config/JdbcConfig.java" | 31 +++++ .../java/com/cx/config/MybatisConfig.java" | 19 +++ .../java/com/cx/config/SpringConfig.java" | 10 ++ .../java/com/cx/config/SpringMvcConfig.java" | 13 ++ .../main/java/com/cx/config/WebConfig.java" | 20 +++ .../com/cx/controller/BookController.java" | 33 +++++ .../src/main/java/com/cx/entity/Book.java" | 15 +++ .../main/java/com/cx/mapper/BookMapper.java" | 21 +++ .../java/com/cx/service/BookService.java" | 20 +++ .../java/com/cx/service/BookServiceImpl.java" | 39 ++++++ .../src/main/resources/jdbc.properties" | 4 + .../src/main/webapp/WEB-INF/web.xml" | 7 + .../untitled4/src/main/webapp/index.jsp" | 5 + .../untitled4/src/test/java/TextBook.java" | 19 +++ 23 files changed, 659 insertions(+) create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/SSM\347\254\224\350\256\260.md" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.gitignore" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/.gitignore" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/dataSources.xml" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/encodings.xml" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/misc.xml" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/sqldialects.xml" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/uiDesigner.xml" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/pom.xml" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/JdbcConfig.java" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/MybatisConfig.java" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/SpringConfig.java" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/SpringMvcConfig.java" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/WebConfig.java" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/controller/BookController.java" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/entity/Book.java" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/mapper/BookMapper.java" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/service/BookService.java" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/service/BookServiceImpl.java" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/resources/jdbc.properties" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/webapp/WEB-INF/web.xml" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/webapp/index.jsp" create mode 100644 "\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/test/java/TextBook.java" diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/SSM\347\254\224\350\256\260.md" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/SSM\347\254\224\350\256\260.md" new file mode 100644 index 000000000..92df2ae75 --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/SSM\347\254\224\350\256\260.md" @@ -0,0 +1,85 @@ +# SSM笔记 + +1.首先建包,config,controller,entity,mapper,service + +2.测试书本所以必须需要一个实体类Book, + +3.接着写一个控制类BookController来控制我的书本 + +```java +package com.pdd.controller; + +import org.springframework.web.bind.annotation.RequestMapping; + +public class BookController { + @RequestMapping("/getString") +public String t1(){ + + return "index.jsp"; + } +} + +``` + +4.写包config,里面写实体类SpringMvcConfig:先表明身份是@configuration,扫描包@ComponentScan("com.pdd.controller")管理BookController + +```java +package com.pdd.config; + +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; + +@Configuration +@ComponentScan("com.pdd.controller") +public class SpringMvcConfig { + +} +``` + +5.把SpirngMvcConfig交给tomcat来接管也就是WebMvcConfig,建立WebConfig实体类,它需要继承AACD(AbstractAnnotationConfigDispatcherServletInitializer),给实现方法 + +**小结:** + +```html +tomcat启动先加载WebConfig这个配置文件, +然后WebConfig加载SpringMvcConfig接着加载controller这个包, +里面有@RequestMapping("/getString")开始接收网址,网址返回index.jsp +@ResponceBody:告诉系统我响应的就是数据本身,而不是视图,如果是return“666”,则返回的也是666而不是一个视图。 +``` + +```java +package com.pdd.config; + +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer; + +public class WebConfig extends AbstractAnnotationConfigDispatcherServletInitializer { + @Override + protected Class[] getRootConfigClasses() { + return new Class[0]; + } + + @Override + protected Class[] getServletConfigClasses() { + return new Class[]{SpringMvcConfig.class}; + } + + @Override + protected String[] getServletMappings() { + return new String[]{"/"}; + } +} +``` + +6.如何响应一个对象? + +mybatisConfig扫mapper:@MapperScan("com.cx.mapper") + +SpringConfig扫service:@ComponentScan("com.cx.service") + +SpringMvcConfig扫controller:@Component("com.cx.controller") + +SpringConfig是核心配置文件需要把JdbcConfig和MybaitisConfig给引入进来:@Import(JdbcConfig.class,MybaitisConfig.class) + + + diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.gitignore" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.gitignore" new file mode 100644 index 000000000..5ff6309b7 --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.gitignore" @@ -0,0 +1,38 @@ +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### IntelliJ IDEA ### +.idea/modules.xml +.idea/jarRepositories.xml +.idea/compiler.xml +.idea/libraries/ +*.iws +*.iml +*.ipr + +### Eclipse ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ + +### Mac OS ### +.DS_Store \ No newline at end of file diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/.gitignore" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/.gitignore" new file mode 100644 index 000000000..35410cacd --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/.gitignore" @@ -0,0 +1,8 @@ +# 默认忽略的文件 +/shelf/ +/workspace.xml +# 基于编辑器的 HTTP 客户端请求 +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/dataSources.xml" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/dataSources.xml" new file mode 100644 index 000000000..880e054ce --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/dataSources.xml" @@ -0,0 +1,17 @@ + + + + + mysql.8 + true + com.mysql.cj.jdbc.Driver + jdbc:mysql://localhost:3306 + + + + + + $ProjectFileDir$ + + + \ No newline at end of file diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/encodings.xml" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/encodings.xml" new file mode 100644 index 000000000..aa00ffab7 --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/encodings.xml" @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/misc.xml" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/misc.xml" new file mode 100644 index 000000000..132404bc2 --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/misc.xml" @@ -0,0 +1,14 @@ + + + + + + + + + + \ No newline at end of file diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/sqldialects.xml" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/sqldialects.xml" new file mode 100644 index 000000000..cc1406191 --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/sqldialects.xml" @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/uiDesigner.xml" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/uiDesigner.xml" new file mode 100644 index 000000000..2b63946d5 --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/.idea/uiDesigner.xml" @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/pom.xml" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/pom.xml" new file mode 100644 index 000000000..8eda7df10 --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/pom.xml" @@ -0,0 +1,103 @@ + + 4.0.0 + com.cx + untitled4 + war + 1.0-SNAPSHOT + untitled4 Maven Webapp + http://maven.apache.org + + + + + org.springframework + spring-webmvc + 5.2.25.RELEASE + + + + + org.springframework + spring-test + 5.2.25.RELEASE + + + + + org.springframework + spring-jdbc + 5.2.25.RELEASE + + + + javax.servlet + javax.servlet-api + 3.1.0 + provided + + + + com.fasterxml.jackson.core + jackson-databind + 2.9.0 + + + + + org.projectlombok + lombok + 1.18.36 + + + + org.mybatis + mybatis + 3.5.16 + + + + + com.mysql + mysql-connector-j + 8.3.0 + + + + junit + junit + 4.13.2 + test + + + + + com.alibaba + druid + 1.1.20 + + + + + + org.mybatis + mybatis-spring + 2.0.6 + + + + + + + org.apache.tomcat.maven + tomcat7-maven-plugin + 2.2 + + / + 80 + utf-8 + + + + + diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/JdbcConfig.java" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/JdbcConfig.java" new file mode 100644 index 000000000..38a71350c --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/JdbcConfig.java" @@ -0,0 +1,31 @@ +package com.cx.config; + +import com.alibaba.druid.pool.DruidDataSource; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.PropertySource; +import org.springframework.jdbc.datasource.DriverManagerDataSource; +import org.springframework.stereotype.Component; + +import javax.sql.DataSource; +@Component +@PropertySource("classpath:jdbc.properties") +public class JdbcConfig { + @Value("${jdbc.driver}") + private String driver; + @Value("${jdbc.url}") + private String url; + @Value("${jdbc.username}") + private String username; + @Value("${jdbc.password}") + private String password; + @Bean + public DruidDataSource dataSource() { + DruidDataSource dataSource = new DruidDataSource(); + dataSource.setDriverClassName(driver); + dataSource.setUrl(url); + dataSource.setUsername(username); + dataSource.setPassword(password); + return dataSource; + } +} diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/MybatisConfig.java" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/MybatisConfig.java" new file mode 100644 index 000000000..83864862a --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/MybatisConfig.java" @@ -0,0 +1,19 @@ +package com.cx.config; + +import org.mybatis.spring.SqlSessionFactoryBean; +import org.mybatis.spring.annotation.MapperScan; +import org.springframework.context.annotation.Bean; +import org.springframework.stereotype.Component; + +import javax.sql.DataSource; + +@Component +@MapperScan("com.cx.mapper") +public class MybatisConfig { + @Bean + public SqlSessionFactoryBean sessionFactory(DataSource dataSource) { + SqlSessionFactoryBean factoryBean = new SqlSessionFactoryBean(); + factoryBean.setDataSource(dataSource); + return factoryBean; + } +} diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/SpringConfig.java" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/SpringConfig.java" new file mode 100644 index 000000000..0cb50420a --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/SpringConfig.java" @@ -0,0 +1,10 @@ +package com.cx.config; + +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; + +@Configuration +@ComponentScan("com.cx.service") +public class SpringConfig { + +} diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/SpringMvcConfig.java" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/SpringMvcConfig.java" new file mode 100644 index 000000000..cf2a2c427 --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/SpringMvcConfig.java" @@ -0,0 +1,13 @@ +package com.cx.config; + +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.EnableAspectJAutoProxy; +import org.springframework.stereotype.Component; +import org.springframework.web.servlet.config.annotation.EnableWebMvc; + +@Configuration +@Component("com.cx.controller") +@EnableWebMvc +public class SpringMvcConfig { + +} diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/WebConfig.java" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/WebConfig.java" new file mode 100644 index 000000000..a02ba8daa --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/config/WebConfig.java" @@ -0,0 +1,20 @@ +package com.cx.config; + +import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer; +//webConfig想象成一个tomcat容器,tomcat加载时要启动的配置 +public class WebConfig extends AbstractAnnotationConfigDispatcherServletInitializer { + @Override + protected Class[] getRootConfigClasses() { + return new Class[]{SpringConfig.class};//加载Spring框架的配置 + } + + @Override + protected Class[] getServletConfigClasses() { + return new Class[]{SpringMvcConfig.class};//加载mvc的配置文件 + } + + @Override + protected String[] getServletMappings() { + return new String[]{"/"};//设置被tomcat容器接管网页的起始位置/是网站根目录 + } +} diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/controller/BookController.java" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/controller/BookController.java" new file mode 100644 index 000000000..df3c49066 --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/controller/BookController.java" @@ -0,0 +1,33 @@ +package com.cx.controller; + +import com.cx.entity.Book; +import com.cx.service.BookService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; + +import java.util.List; + +@Controller +public class BookController { + @Autowired + private BookService bookService; + List selectAllBook() { + return bookService.selectAllBook(); + } + + Book selectBookById(int bookId) { + return bookService.selectBookById(bookId); + } + + int deleteDept(Book book) { + return bookService.deleteDept(book); + } + + int updateDept(Book book) { + return bookService.updateDept(book); + } + + int insertDept(Book book) { + return bookService.insertDept(book); + } +} diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/entity/Book.java" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/entity/Book.java" new file mode 100644 index 000000000..f1ce8912c --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/entity/Book.java" @@ -0,0 +1,15 @@ +package com.cx.entity; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class Book { +private int bookId; +private String bookName; +private String bookAuthor; +private String price; +} diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/mapper/BookMapper.java" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/mapper/BookMapper.java" new file mode 100644 index 000000000..c1b8760d8 --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/mapper/BookMapper.java" @@ -0,0 +1,21 @@ +package com.cx.mapper; + +import com.cx.entity.Book; +import org.apache.ibatis.annotations.*; + +import java.util.List; + +@Mapper +public interface BookMapper { + @Select("select * from book") + List selectAllBook(); + @Select("select * from book where bookId = #{bookId}") + Book selectBookById(int bookId); + @Delete("delete from book where bookId = #{bookId}") + int deleteDept(Book book); + @Update("update book set bookName = #{bookName} where bookId=#{bookId}") + int updateDept(Book book); + @Insert("insert into book values (#{bookId},#{bookName},#{bookAuthor},#{price})") + int insertDept(Book book); +} + diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/service/BookService.java" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/service/BookService.java" new file mode 100644 index 000000000..f8de93c9f --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/service/BookService.java" @@ -0,0 +1,20 @@ +package com.cx.service; + +import com.cx.entity.Book; +import org.apache.ibatis.annotations.*; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +@Service +public interface BookService { + List selectAllBook(); + + Book selectBookById(int bookId); + + int deleteDept(Book book); + + int updateDept(Book book); + + int insertDept(Book book); +} diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/service/BookServiceImpl.java" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/service/BookServiceImpl.java" new file mode 100644 index 000000000..25ac846ed --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/java/com/cx/service/BookServiceImpl.java" @@ -0,0 +1,39 @@ +package com.cx.service; + +import com.cx.entity.Book; +import com.cx.mapper.BookMapper; +import org.apache.ibatis.annotations.Mapper; +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; + @Override + public List selectAllBook() { + return bookMapper.selectAllBook(); + } + + @Override + public Book selectBookById(int bookId) { + return bookMapper.selectBookById(bookId); + } + + @Override + public int deleteDept(Book book) { + return bookMapper.deleteDept(book); + } + + @Override + public int updateDept(Book book) { + return bookMapper.updateDept(book); + } + + @Override + public int insertDept(Book book) { + return bookMapper.insertDept(book); + } +} diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/resources/jdbc.properties" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/resources/jdbc.properties" new file mode 100644 index 000000000..83a95afee --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/resources/jdbc.properties" @@ -0,0 +1,4 @@ +jdbc.driver = com.mysql.cj.jdbc.Driver +jdbc.url = jdbc:mysql://localhost:3306/library +jdbc.password = gcx20050530 +jdbc.username = root \ No newline at end of file diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/webapp/WEB-INF/web.xml" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/webapp/WEB-INF/web.xml" new file mode 100644 index 000000000..9f88c1f96 --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/webapp/WEB-INF/web.xml" @@ -0,0 +1,7 @@ + + + + Archetype Created Web Application + diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/webapp/index.jsp" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/webapp/index.jsp" new file mode 100644 index 000000000..c38169bb9 --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/main/webapp/index.jsp" @@ -0,0 +1,5 @@ + + +

Hello World!

+ + diff --git "a/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/test/java/TextBook.java" "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/test/java/TextBook.java" new file mode 100644 index 000000000..91ae1f56c --- /dev/null +++ "b/\345\271\262\347\272\257\346\254\243/2024.1227 SSM\346\225\264\345\220\210/untitled4/src/test/java/TextBook.java" @@ -0,0 +1,19 @@ +import com.cx.config.SpringConfig; +import com.cx.entity.Book; +import com.cx.service.BookService; +import org.springframework.context.ApplicationContext; +import org.springframework.context.annotation.AnnotationConfigApplicationContext; + +import java.util.List; + +public class TextBook { + //单独测试service能不能用 + public void test1(){ + ApplicationContext context = new AnnotationConfigApplicationContext(SpringConfig.class); + BookService bean = context.getBean(BookService.class); + List books = bean.selectAllBook(); + System.out.println("books = " + books); + } + } + + -- Gitee