代码拉取完成,页面将自动刷新
Maven中央仓库:https://mvnrepository.com/
Maven基础:https://www.liaoxuefeng.com/wiki/1252599548343744/1255945359327200
Pom文件详解:https://blog.csdn.net/weixin_38569499/article/details/91456988
server.port=8088
# sqlserver数据库基础配置
spring.datasource.url=jdbc:sqlserver://39.101.137.10:1433;databasename=test_db
spring.datasource.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.datasource.username=SA
spring.datasource.password=cdfGroup511
# 日志配置(输出SQL语句)
logging.level.com.xiaoshi.test.mapper = debug
新建6个包:
首先实体类字段要与数据库字段对应。
其次实现两个构造方法:
实现get、set方法
重写toString方法
下表列出了基本 SQL Server、JDBC 和 Java 编程语言数据类型之间的默认映射:
SQL Server 类型 | JDBC 类型 (java.sql.Types) | Java 语言类型 |
---|---|---|
bigint | BIGINT | long |
binary | BINARY | byte[] |
bit | BIT | boolean |
char | CHAR | 字符串 |
date | DATE | java.sql.Date |
datetime3 | TIMESTAMP | java.sql.Timestamp |
datetime2 | TIMESTAMP | java.sql.Timestamp |
datetimeoffset2 | microsoft.sql.Types.DATETIMEOFFSET | microsoft.sql.DateTimeOffset |
Decimal | DECIMAL | java.math.BigDecimal |
FLOAT | DOUBLE | double |
image | LONGVARBINARY | byte[] |
int | INTEGER | int |
money | DECIMAL | java.math.BigDecimal |
nchar | CHAR NCHAR (Java SE 6.0) | 字符串 |
ntext | LONGVARCHAR LONGNVARCHAR (Java SE 6.0) | 字符串 |
numeric | NUMERIC | java.math.BigDecimal |
nvarchar | VARCHAR NVARCHAR (Java SE 6.0) | 字符串 |
nvarchar(max) | VARCHAR NVARCHAR (Java SE 6.0) | 字符串 |
real | real | FLOAT |
smalldatetime | TIMESTAMP | java.sql.Timestamp |
smallint | SMALLINT | short |
smallmoney | DECIMAL | java.math.BigDecimal |
text | LONGVARCHAR | 字符串 |
time | TIME1 | java.sql.Time |
timestamp | BINARY | byte[] |
tinyint | TINYINT | short |
udt | VARBINARY | byte[] |
uniqueidentifier | CHAR | 字符串 |
varbinary | VARBINARY | byte[] |
varbinary(max) | VARBINARY | byte[] |
varchar | VARCHAR | 字符串 |
varchar(max) | VARCHAR | 字符串 |
xml | LONGVARCHAR LONGNVARCHAR (Java SE 6.0) | 字符串 SQLXML |
sqlvariant | microsoft.sql.Types.SQL_VARIANT | 对象 |
geometry | VARBINARY | byte[] |
geography | VARBINARY | byte[] |
@Mapper
public interface TestMapper {
String test_table = "test";
@Select(
"SELECT * FROM " + test_table
)
List<TestEntity> getTestList();
@Select(
"SELECT * FROM " + test_table + " WHERE guid = #{guid}"
)
TestEntity getTestByGuid(@Param("guid") String guid);
@Insert(
"INSERT INTO test ( guid, name, age, sex, money, sign_date, sign_datetime, sign_time, [desc] ) " +
"VALUES " +
"(#{guid},#{name},#{age},#{sex},#{money},#{sign_date},#{sign_datetime},#{sign_time},#{desc})"
)
int insertTest(TestEntity testEntity);
}
Service需要写一个接口,再写一个接口的实现类。
在实现类里面调用mapper层的接口获取到数据库的数据,根据业务需求进行逻辑处理,之后返回给controller层。
接口:
public interface TestService {
List<TestEntity> getTestList();
int insertTest(TestEntity testEntity);
TestEntity getTestByGuid(String guid);
}
实现类:
@Service
public class TestServiceImp implements TestService {
@Resource
TestMapper testMapper;
@Override
public List<TestEntity> getTestList() {
return testMapper.getTestList();
}
@Override
public int insertTest(TestEntity testEntity) {
return testMapper.insertTest(testEntity);
}
@Override
public TestEntity getTestByGuid(String guid) {
// 写逻辑
TestEntity testByGuid = testMapper.getTestByGuid(guid);
testByGuid.setDesc("大笨蛋");
return testByGuid;
}
}
Controller层定义接口请求路径以及请求参数等。
@RestController
@RequestMapping("/test")
public class TestController {
@Autowired
TestService testService;
@GetMapping(value = "/getTestList")
public List<TestEntity> getTestList(){
return testService.getTestList();
}
@PostMapping(value = "/insertTest")
int insertTest(@RequestBody TestEntity testEntity){
return testService.insertTest(testEntity);
}
@GetMapping(value="getTestByGuid")
TestEntity getTestByGuid(@RequestParam(value = "guid") String guid){
return testService.getTestByGuid(guid);
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。