解释代码package com.xml; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration; @SpringBootApplication //指定mapper的包路径,省去@Mapper注解 @MapperScan("com.xml.mapper") public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } }
时间: 2023-05-31 10:03:57 浏览: 198
这段代码是一个Java类,位于com.xml包下。它使用了Spring Boot框架,@SpringBootApplication注解表示它是一个Spring Boot应用程序的入口类。
在这段代码中,还使用了@MapperScan注解,指定了Mapper接口所在的包路径,可以省略Mapper接口上的@Mapper注解。同时,还禁用了Spring Boot自动配置的数据源和JPA/Hibernate自动配置,因为这些配置在本应用程序中并不需要。
main方法是这个应用程序的入口,通过调用SpringApplication类的run方法来启动应用程序。
相关问题
play framework 整合 mybatis-plus 、spring
要将 Play Framework、MyBatis-Plus 和 Spring 集成起来,可以按照以下步骤进行操作:
1. 添加 MyBatis-Plus 和 Spring 依赖项到 Play Framework 项目中。
```
libraryDependencies ++= Seq(
"com.baomidou" %% "mybatis-plus" % "3.4.2",
"org.springframework" % "spring-context" % "5.2.9.RELEASE"
)
```
2. 创建一个 Spring Context 配置文件,例如 applicationContext.xml,并在文件中配置 MyBatis-Plus 和数据源。
```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"
xmlns:mybatis-plus="http://mybatis.org/schema/mybatis-plus"
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://mybatis.org/schema/mybatis-plus http://mybatis.org/schema/mybatis-plus/mybatis-plus.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<!-- MyBatis-Plus 配置 -->
<mybatis-plus:configuration>
<mybatis-plus:global-config>
<mybatis-plus:db-config id="dbConfig" />
</mybatis-plus:global-config>
</mybatis-plus:configuration>
<!-- 数据源配置 -->
<bean id="dataSource" class="com.zaxxer.hikari.HikariDataSource">
<property name="driverClassName" value="com.mysql.cj.jdbc.Driver" />
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/test" />
<property name="username" value="root" />
<property name="password" value="password" />
</bean>
<!-- MyBatis-Plus SqlSessionFactory 配置 -->
<bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation" value="classpath:mybatis-config.xml" />
<property name="mapperLocations" value="classpath*:mapper/**/*.xml" />
<property name="globalConfig" ref="dbConfig" />
</bean>
<!-- MyBatis-Plus MapperScannerConfigurer 配置 -->
<bean class="com.baomidou.mybatisplus.extension.spring.MybatisMapperScannerConfigurer">
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
</bean>
</beans>
```
3. 创建 MyBatis-Plus 配置文件,例如 mybatis-config.xml,并在文件中配置 MyBatis-Plus 的一些参数和插件。
```xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<settings>
<setting name="cacheEnabled" value="true" />
<setting name="lazyLoadingEnabled" value="true" />
<setting name="aggressiveLazyLoading" value="false" />
</settings>
<plugins>
<plugin interceptor="com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor" />
</plugins>
</configuration>
```
4. 在 Play Framework 中,可以使用 SpringApplicationBuilder 创建 Spring Context,并将其与应用程序一起启动。
```java
package controllers;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import play.mvc.Controller;
import play.mvc.Result;
public class HomeController extends Controller {
public Result index() {
// 使用 SpringApplicationBuilder 创建 Spring Context
ApplicationContext context = new AnnotationConfigApplicationContext();
context.registerShutdownHook();
// 或者使用 ClassPathXmlApplicationContext 加载 applicationContext.xml 文件
// ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
// 获取 MyBatis-Plus Mapper 接口实例
UserMapper userMapper = context.getBean(UserMapper.class);
// 调用接口方法,执行 SQL 操作
User user = userMapper.selectById(1L);
return ok(user.toString());
}
}
```
这样,就可以在 Play Framework 中集成 MyBatis-Plus 和 Spring 了。当然,还需要根据项目实际情况进行进一步的配置和调整。
Spring Boot +mybatis +oracle开发restful风格的查询接口
好的,下面是一个简单的示例:
1. 在 pom.xml 中添加 Spring Boot、MyBatis 和 Oracle JDBC 驱动的依赖:
```xml
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.3</version>
</dependency>
<dependency>
<groupId>com.oracle.database.jdbc</groupId>
<artifactId>ojdbc8</artifactId>
<version>19.3.0.0</version>
</dependency>
</dependencies>
```
2. 配置 Oracle 数据库连接信息
在 `application.properties` 文件中添加以下配置:
```
spring.datasource.url=jdbc:oracle:thin:@localhost:1521:ORCL
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
```
3. 创建 MyBatis Mapper
在 `src/main/resources` 目录下创建 `mapper` 文件夹,然后创建一个 `UserMapper.xml` 文件。示例代码如下:
```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.demo.mapper.UserMapper">
<select id="getUserById" parameterType="int" resultType="com.example.demo.entity.User">
SELECT * FROM users WHERE id = #{id}
</select>
<select id="getAllUsers" resultType="com.example.demo.entity.User">
SELECT * FROM users
</select>
</mapper>
```
注意:`com.example.demo.entity.User` 是一个简单的实体类,包含 `id`、`name` 和 `email` 三个属性。
4. 创建 MyBatis DAO
在 `src/main/java` 目录下创建 `dao` 文件夹,然后创建一个 `UserDao.java` 接口。示例代码如下:
```java
package com.example.demo.dao;
import com.example.demo.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import java.util.List;
@Mapper
@Repository
public interface UserDao {
User getUserById(int id);
List<User> getAllUsers();
}
```
5. 创建 Service 和 Controller
在 `src/main/java` 目录下创建 `service` 文件夹,然后创建一个 `UserService.java` 接口和一个 `UserController.java` 控制器。示例代码如下:
```java
package com.example.demo.service;
import com.example.demo.entity.User;
import java.util.List;
public interface UserService {
User getUserById(int id);
List<User> getAllUsers();
}
```
```java
package com.example.demo.service.impl;
import com.example.demo.dao.UserDao;
import com.example.demo.entity.User;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserDao userDao;
@Override
public User getUserById(int id) {
return userDao.getUserById(id);
}
@Override
public List<User> getAllUsers() {
return userDao.getAllUsers();
}
}
```
```java
package com.example.demo.controller;
import com.example.demo.entity.User;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/users/{id}")
public User getUserById(@PathVariable int id) {
return userService.getUserById(id);
}
@GetMapping("/users")
public List<User> getAllUsers() {
return userService.getAllUsers();
}
}
```
6. 运行应用程序
在终端中输入以下命令:
```
mvn spring-boot:run
```
然后在浏览器中访问以下 URL:
```
http://localhost:8080/users/1
http://localhost:8080/users
```
就可以看到查询结果了。
阅读全文