- 创建Maven项目
使用IDEA创建Maven项目,步骤如下:
- 点击IDEA的File菜单,选择New,然后选择Project;
- 在弹出的New Project窗口中,选择Maven;
- 在下一步中,我们需要输入项目的信息,包括 GroupId、ArtifactId、Version、Project name,这些信息都可以任意填写;
-
最后,点击Finish按钮即可。
-
导入Spring相关依赖
在pom.xml文件中,添加Spring相关依赖:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.0.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.0.5.RELEASE</version>
</dependency>
这里我们添加了Spring的基础依赖以及WebMVC模块。
- 创建Spring配置文件
在resources目录下,创建一个新的Spring配置文件,命名为applicationContext.xml,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="helloWorld" class="com.example.HelloWorld">
<property name="message" value="Hello WORLD!" />
</bean>
</beans>
这里我们仅创建了一个名为helloWorld的bean,其类为com.example.HelloWorld,并设置了一个名为message的属性。
- 创建Controller
在src/main/java目录下,创建一个新的类HelloController,内容如下:
package com.example;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
@Controller
public class HelloController {
@RequestMapping("/hello")
public ModelAndView helloWorld() {
String message = "Hello World, Spring 5.0!";
return new ModelAndView("hello", "message", message);
}
}
这里我们使用了Spring的注解@Controller和@RequestMapping来定义Controller类和请求的URL,返回的视图模板为hello,同时将数据模型中名为message的属性设置为"Hello World, Spring 5.0!"。
- 创建视图模板
在src/main/resources/templates目录下,创建一个名为hello.html的文件,内容如下:
<!DOCTYPE html>
<html>
<head>
<title>Hello World Example</title>
</head>
<body>
<h1>${message}</h1>
</body>
</html>
这里我们使用了Thymeleaf模板引擎来呈现数据模型中的message属性。
- 运行项目
在IDEA中,右键点击HelloController类,选择Run即可运行项目。在浏览器中访问http://localhost:8080/hello,即可看到页面上显示的"Hello World, Spring 5.0!"。
示例1:初始项目配置
假设我们现在需要创建一个新的Maven项目,其基本信息如下:
- GroupId: com.example
- ArtifactId: demo
- Version: 1.0-SNAPSHOT
- Project name: SpringDemo
我们可以按照上文中的步骤来创建该项目,然后添加Spring相关依赖,创建配置文件、Controller和视图模板,最后运行项目即可。
示例2:添加MyBatis支持
假设我们现在需要将上文的示例项目添加MyBatis支持,其步骤如下:
- 添加MyBatis依赖
在pom.xml文件中,添加MyBatis相关依赖:
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.5</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>2.0.5</version>
</dependency>
这里我们添加了MyBatis和MyBatis-Spring的依赖。
- 创建MyBatis配置文件
在resources目录下,创建一个名为mybatis-config.xml的文件,内容如下:
<?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>
<setting name="cacheEnabled" value="true"/>
</settings>
<typeAliases>
<typeAlias type="com.example.User" alias="User"/>
</typeAliases>
<mappers>
<mapper resource="mapper/UserMapper.xml"/>
</mappers>
</configuration>
这里我们定义了一些MyBatis的配置信息,包括开启缓存、定义一个别名User、加载一个名为UserMapper.xml的映射文件。
- 创建Mapper接口和映射文件
在src/main/java目录下,创建一个名为UserMapper.java的接口,内容如下:
package com.example.mapper;
import com.example.User;
import java.util.List;
public interface UserMapper {
User getUserById(Long id);
List<User> getUsers();
void insert(User user);
void update(User user);
void delete(Long id);
}
这里我们定义了一些操作数据库的方法,比如根据ID获取用户、获取所有用户、插入用户、更新用户、删除用户等。
在resources目录下,创建一个名为UserMapper.xml的映射文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.mapper.UserMapper">
<resultMap id="userMap" type="User">
<id column="id" property="id"/>
<result column="name" property="name"/>
<result column="age" property="age"/>
</resultMap>
<select id="getUserById" resultMap="userMap">
select * from user where id = #{id}
</select>
<select id="getUsers" resultMap="userMap">
select * from user
</select>
<insert id="insert" parameterType="User">
insert into user(name, age) values (#{name}, #{age})
</insert>
<update id="update" parameterType="User">
update user set name=#{name}, age=#{age} where id=#{id}
</update>
<delete id="delete" parameterType="Long">
delete from user where id=#{id}
</delete>
</mapper>
这里我们定义了与UserMapper接口对应的SQL语句,例如根据ID获取用户、获取所有用户、插入用户、更新用户、删除用户等。
- 修改Spring配置文件
在applicationContext.xml文件中,添加以下内容:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/mydatabase" />
<property name="username" value="root" />
<property name="password" value="mysql" />
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation" value="classpath:mybatis-config.xml" />
</bean>
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.example.mapper"/>
</bean>
这里我们使用了Apache Commons DBCP连接池来管理数据库连接,配置了dataSource bean,并创建了sqlSessionFactory和MapperScannerConfigurer两个bean,用于初始化MyBatis和Mapper接口。
- 修改Controller类
在HelloController.java文件中,添加以下代码:
@Autowired
private UserMapper userMapper;
@RequestMapping("/getUser/{id}")
public ModelAndView getUserById(@PathVariable Long id) {
User user = userMapper.getUserById(id);
return new ModelAndView("hello", "message", user.getName() + ", " + user.getAge());
}
@RequestMapping("/getUsers")
public ModelAndView getUsers() {
List<User> users = userMapper.getUsers();
StringBuilder stringBuilder = new StringBuilder();
for (User user : users) {
stringBuilder.append(user.getName()).append(", ").append(user.getAge()).append("<br>");
}
return new ModelAndView("hello", "message", stringBuilder.toString());
}
这里我们将UserController中的helloWorld方法改成了getUserById和getUsers方法,分别是根据ID获取用户和获取所有用户信息。
- 运行项目
在IDEA中,右键点击HelloController类,选择Run即可运行项目。在浏览器中访问http://localhost:8080/getUser/1 或 http://localhost:8080/getUsers,即可看到页面上显示的用户信息。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:IDEA+Maven创建Spring项目的实现步骤 - Python技术站