Maison >Java >javaDidacticiel >[Tutoriel Java] SSM : configuration de l'environnement
Création du répertoire
pom.xml
Couche SSM par Configuration de la couche
entité : stocke les classes d'entité
web : stocke le contrôleur, équivalent à l'action dans Struts
service : couche de logique métier-> Créer un package .impl en interne (ex : com.imooc.project name.service.impl)
dao : principalement des deals avec la base de données, les opérations de lecture et d'écriture de fichiers, les opérations de cache Redis et d'autres opérations liées aux données. Il n'est pas nécessaire de construire dans le package impl, car en utilisant mybatis, la façon d'implémenter l'interface dans le fichier de configuration se trouve dans resources.mapper,
dto : principalement pour compenser les défauts de l'entité et encapsuler une couche
énumérations : stocke les énumérations
intercepteur : intercepteur
util : outil général Class storage
mapper : stocke le SQL correspondant à chaque méthode dans DAO, sans devoir écrire l'implémentation de la classe DAO
spring : stocke les fichiers de configuration Spring
java
ressources
le package jar peut être interrogé : http://mvnrepository.com /
junit : Spécifier la portée06db57cb000bdd2564c5b32a302b10e2test03b1008234ba0cf6ad3c873aea327e8a
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency>
logback
<dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> </dependency>
La classe d'outils de base de base du framework Spring. Les autres composants Spring doivent utiliser les classes de ce package. Le noyau de base des autres composants
doit être utilisé par toutes les applications, y compris l'accès aux fichiers de configuration, la création et la gestion. beans et toutes les classes liées aux opérations IOS/DI. Mécanisme de réflexion de type Java
Si l'application n'a besoin que d'un support de base IOC/DI, introduisez simplement les fichiers spring-core.jar et spring-beans.jar
Fournit un grand nombre d'extensions pour Spring Vous pouvez trouver toutes les classes requises pour utiliser les fonctionnalités Spring ApplicationContext, les composants d'instrumentation et les classes associées pour la vérification
Toutes les classes que Spring encapsule l'accès aux données JDBC
Fournit une gestion cohérente des transactions déclaratives et programmatiques pour JDBC, Hibernate, JDO, JPA, etc.
Contient les classes de base requises lors de l'utilisation du framework Spring lors du développement d'applications Web, y compris le chargement automatique de WebApplicationContext
contient toutes les classes liées au framework SpringMVC, la classe la plus importante est dispatcher-servlet
est simple pour tester des frameworks tels que JUNIT Encapsulate
pour spécifier la portée : 06db57cb000bdd2564c5b32a302b10e2test03b1008234ba0cf6ad3c873aea327e8a
contient la bibliothèque de classes de base Mybatis
connecté au framework Spring
Prise en charge de l'interaction JDBC avec MySQL
Pool de connexions
Fournir un service de servlet
est utilisé pour analyser JSON
Il est utilisé dans de nombreux cas lorsque le contrôleur de SpringMVC interagit avec l'analyse frontale JSON2.5.6 commons-collectionsClasse d'outils cartographiques, extension de la collection JAVA
spring-core.jar nécessite commons-collections.jar pour fournir une prise en charge de base des classes
① Remplissez les dépendances requises du package jar qui viennent d'être expliquées
② Remplissez l'instruction spring.version<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> </dependency> org.springframework spring-core ${spring.version} org.springframework spring-beans ${spring.version} org.springframework spring-context ${spring.version} org.springframework spring-jdbc ${spring.version} org.springframework spring-tx ${spring.version} org.springframework spring-web ${spring.version} org.springframework spring-webmvc ${spring.version} org.springframework spring-test ${spring.version} test javax.servlet javax.servlet-api 3.1.0 com.fasterxml.jackson.core jackson-databind 2.8.7 commons-collections commons-collections 3.2 org.mybatis mybatis 3.4.2 org.mybatis mybatis-spring 1.3.1 mysql mysql-connector-java 5.1.37 c3p0 c3p0 0.9.1.2 net.coobird thumbnailator 0.4.8 com.github.penggle kaptcha 2.3.2 commons-fileupload commons-fileupload 1.3.2 redis.clients jedis 2.9.0
<properties> <spring.version>4.3.7.RELEASE</spring.version> </properties>avant fce2022be5e87c17c94245fd7ccbf1d9 3. Configuration SSM couche par couche
jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/{填写项目名}?useUnicode=true&characterEncoding=utf8 jdbc.username={databases的username} jdbc.password={databases的password}Écrivez temporairement le numéro de compte et le mot de passe en texte brut. jdbc utilisera le pilote mysql.jdbc.Driver pour accéder à la base de données à l'adresse jdbc.url, et utilisera le nom d'utilisateur et le mot de passe pour se connecter à MySQL. 3.2 mybatis-config.xmlLe fichier de configuration mybatis est créé dans le répertoire src/main/resources Le contenu du fichier est le suivant :
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <!-- 配置全局属性 --> <settings> <!-- 使用jdbc的getGeneratedKeys获取数据库自增主键值 --> <setting name="useGeneratedKeys" value="true" /> <!-- 使用列标签替换列别名 默认:true --> <setting name="useColumnLabel" value="true" /> <!-- 开启驼峰命名转换:Table{create_time} -> Entity{createTime} --> <setting name="mapUnderscoreToCamelCase" value="true" /> </settings> </configuration>3.3. Configuration liée à SpringStocker dans le répertoire src/main/resources/spring3.3.1 Créer spring-dao.xml
注意包名的填写:我用中文写了的位置,IDE会标红
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 配置整合mybatis过程 --> <!-- 1.配置数据库相关参数properties的属性:${url} --> <context:property-placeholder location="classpath:jdbc.properties"/> <!-- 2.数据库连接池 --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <!-- 配置连接池属性 --> <property name="driverClass" value="${jdbc.driver}" /> <property name="jdbcUrl" value="${jdbc.url}" /> <property name="user" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> <!-- c3p0连接池的私有属性 --> <property name="maxPoolSize" value="30" /> <property name="minPoolSize" value="10" /> <!-- 关闭连接后不自动commit --> <property name="autoCommitOnClose" value="false" /> <!-- 获取连接超时时间 --> <property name="checkoutTimeout" value="10000" /> <!-- 当获取连接失败重试次数 --> <property name="acquireRetryAttempts" value="2" /> </bean> <!-- 3.配置SqlSessionFactory对象 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <!-- 注入数据库连接池 --> <property name="dataSource" ref="dataSource" /> <!-- 配置MyBaties全局配置文件:mybatis-config.xml --> <property name="configLocation" value="classpath:mybatis-config.xml" /> <!-- 扫描entity包 使用别名 --> <property name="typeAliasesPackage" value="{实体类包所在的位置}" /> <!-- 扫描sql配置文件:mapper需要的xml文件 --> <property name="mapperLocations" value="classpath:mapper/*.xml" /> </bean> <!-- 4.配置扫描Dao接口包,动态实现Dao接口,注入到spring容器中 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <!-- 注入sqlSessionFactory --> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" /> <!-- 给出需要扫描Dao接口包 --> <property name="basePackage" value="{找到需要填写的dao包}" /> </bean> </beans>
扫描Service包下所有使用注释的类型 [注意填写包名]
配置事务管理器:多个DAO的协同操作,保证操作的原子性
配置基于注解的声明式事务
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd"> <!-- 扫描service包下所有使用注解的类型 --> <context:component-scan base-package="{service包所在的目录,如com.cat.o2o.service}" /> <!-- 配置事务管理器 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <!-- 注入数据库连接池 --> <property name="dataSource" ref="dataSource" /> </bean> <!-- 配置基于注解的声明式事务 --> <tx:annotation-driven transaction-manager="transactionManager" /> </beans>
开启Spring注解模式,自动实现Controller,不用做bean的配置
静态资源默认servlet配置,需要在webapp下创建resource目录,图片等静态资源存放位置
视图解析器配置
扫描controller所在的包[需要填写你的controller所在的包]
文件内容如下:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd"> <!-- 配置SpringMVC --> <!-- 1.开启SpringMVC注解模式 --> <mvc:annotation-driven /> <!-- 2.静态资源默认servlet配置 (1)加入对静态资源的处理:js,gif,png (2)允许使用"/"做整体映射 告知SpringMVC的核心类dispatcher-servlet不要对此拦截,交由默认的servlet-handler处理--> <mvc:resources mapping="/resources/**" location="/resources/" /> <mvc:default-servlet-handler /> <!-- 3.定义视图解析器 --> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/html/"></property> <property name="suffix" value=".html"></property> </bean> <!-- 4.扫描web(放置controller的包)相关的bean --> <context:component-scan base-package="需要修改的地方" /> </beans>
配置index文件,暂时默认即可
配置SpringMVC的Servlet,注意填写初始参数(指定目录)
配置Servlet-mapping,默认匹配所有的请求(url-pattern填写/即可)
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1" metadata-complete="true"> <display-name>Archetype Created Web Application</display-name> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>spring-dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/spring-*.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>spring-dispatcher</servlet-name> <!-- 默认匹配所有的请求 --> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
相关推荐:
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!