那先帮我搭建一个SSM框架
时间: 2024-02-29 12:46:19 浏览: 230
搭建ssm框架
好的,以下是搭建SSM框架的步骤:
1. 首先,需要在项目中引入相关的依赖,包括Spring、Spring MVC和MyBatis。在Maven项目中,可以在pom.xml文件中添加如下依赖:
```
<dependencies>
<!-- Spring -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- Spring MVC -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- MyBatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>${mybatis.version}</version>
</dependency>
</dependencies>
```
其中,`${spring.version}`和`${mybatis.version}`是需要在项目中定义的变量。
2. 创建Spring配置文件。在项目的`src/main/resources`目录下创建一个名为`applicationContext.xml`的文件,配置Spring相关的内容,包括数据源、事务管理器等。例如:
```
<!-- 数据源配置 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</bean>
<!-- MyBatis配置 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation" value="classpath:mybatis-config.xml" />
</bean>
<!-- MyBatis扫描mapper接口 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.example.mapper" />
</bean>
<!-- 事务管理器配置 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
```
这里使用了Apache Commons DBCP作为数据源,MyBatis作为ORM框架。
3. 创建MyBatis配置文件。在项目的`src/main/resources`目录下创建一个名为`mybatis-config.xml`的文件,配置MyBatis相关的内容,包括别名、插件等。例如:
```
<configuration>
<!-- 别名配置 -->
<typeAliases>
<package name="com.example.entity" />
</typeAliases>
<!-- 插件配置 -->
<plugins>
<plugin interceptor="com.example.mybatis.interceptor.MyBatisInterceptor">
<property name="property1" value="value1" />
<property name="property2" value="value2" />
</plugin>
</plugins>
</configuration>
```
这里配置了实体类的别名和自定义的MyBatis插件。
4. 创建Spring MVC配置文件。在项目的`src/main/resources`目录下创建一个名为`spring-mvc.xml`的文件,配置Spring MVC相关的内容,包括视图解析器、静态资源处理等。例如:
```
<!-- 视图解析器配置 -->
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/" />
<property name="suffix" value=".jsp" />
</bean>
<!-- 静态资源处理配置 -->
<mvc:resources mapping="/static/**" location="/static/" />
```
这里配置了视图解析器,将视图文件放在`/WEB-INF/views`目录下,并且将静态资源的URL映射到`/static`目录下。
5. 编写控制器和业务逻辑代码。在项目中创建控制器类和业务逻辑代码,使用注解将其注册到Spring容器中。例如:
```
@Controller
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("/list")
public ModelAndView list() {
List<User> userList = userService.getAllUsers();
ModelAndView mv = new ModelAndView("user/list");
mv.addObject("userList", userList);
return mv;
}
// ...
}
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public List<User> getAllUsers() {
return userMapper.getAllUsers();
}
// ...
}
public interface UserMapper {
List<User> getAllUsers();
// ...
}
```
这里演示了一个简单的用户管理模块,包括控制器、业务逻辑和数据访问层。
6. 配置Web应用。在项目的`webapp/WEB-INF`目录下创建一个名为`web.xml`的文件,配置Web应用相关的内容,包括DispatcherServlet和ContextLoaderListener等。例如:
```
<web-app>
<!-- Spring MVC配置 -->
<servlet>
<servlet-name>dispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring-mvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<!-- Spring配置 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
<!-- 编码过滤器配置 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
```
这里配置了一个DispatcherServlet,将URL映射到控制器上。同时,也配置了ContextLoaderListener,将Spring容器加载到Web应用中。还配置了一个编码过滤器,将请求和响应的编码设置为UTF-8。
7. 运行测试。启动Web应用后,在浏览器中访问控制器的URL,查看是否能够正确显示。例如,访问`http://localhost:8080/user/list`,应该能够看到用户列表的页面。
以上就是搭建SSM框架的步骤,希望对你有所帮助。
阅读全文