当前位置:网站首页>_模_板_
_模_板_
2022-04-23 14:00:00 【Kramer_149】
前端
AJAX请求
$ajax({
url : "",
data : {
},
type : "",
dataType : "",
success : function(){
}
})
url 不以"/"开头,以webapp下的目录开头,比如workbench/xxx/xxx/xxx.jsp
web.xml 4.0
<?xml version="1.0" encoding="UTF-8"?>
<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_4_0.xsd"
version="4.0">
</web-app>
jsp页面字符编码、拿路径
置顶写
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + request.getContextPath() + "/";
%>
在head标签里写<base href="<%=basePath%>">
将html改成jsp之后,删除所有路径中的 ../
加了base标签之后,相对路径全部失效,必须使用绝对路径。(从webapp下开始)
后端
MySQL链接URL
语句 jdbc:mysql://localhost:3306/ssm?serverTimezone=UTC
JDK编译版本
pom文件中
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
pom 资源文件
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
MyBatis逆向工程文件
```xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
<!--指定连接数据库的JDBC 驱动包所在位置,指定到你本机的完整路径:根据具体情况修改-->
<classPathEntry location="D:\PROGRAM\MySQL\mysql-connector-java-8.0.20\mysql-connector-java-8.0.20.jar"/>
<!--配置table表信息内容体,targetRuntime 指定采用MyBatis3的版本-->
<context id="tables" targetRuntime="MyBatis3">
<!--抑制生成注释,由于生成的注释都是英文的,可以不让它生成-->
<commentGenerator>
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!--配置数据库连接信息:根据具体情况修改-->
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/springboot?serverTimezone=UTC" userId="root" password="123456">
<property name="nullCatalogMeansCurrent" value="true"/>
</jdbcConnection>
<!--生成model类,targetPackage指定model类的包名,targetProject指定生成的model放在哪个工程下面:根据具体情况修改-->
<javaModelGenerator targetPackage="com.daihan.springboot.model" targetProject="src/main/java">
<property name="enableSubPackages" value="false"/>
<property name="trimStrings" value="false"/>
</javaModelGenerator>
<!--生成MyBatis的Mapper.xml文件,targetPackage指定mapper.xml文件的包名,targetProject指定生成的mapper.xml放在哪个工程下面-->
<sqlMapGenerator targetPackage="com.daihan.springboot.mapper" targetProject="src/main/java">
<property name="enableSubPackages" value="false"/>
</sqlMapGenerator>
<!--生成MyBatis的Mapper接口类文件,targetPackage指定Mapper接口类的包名,targetProject指定生成的Mapper接口放在哪个工程下面-->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.daihan.springboot.mapper" targetProject="src/main/java">
<property name="enableSubPackages" value="false"/>
</javaClientGenerator>
<!--数据库表名及对应的Java模型类名-->
<table tableName="t_Student" domainObjectName="Student" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />
</context>
</generatorConfiguration>
把jar包导入maven中
在jar包所在目录下执行cmd
输入命令
mvn install:install-file -Dfile=jar包名称.jar -DgroupId=maven对应groupid -DartifactId=maven对应artifactId -Dversion=4.2版本号 -Dpackaging=jar
Mysql URL
mysql://localhost:3306/database?useUnicode=true&characterEncoding=utf8&autoReconnect=true&rewriteBatchedStatements=TRUE
后端接受并处理JSON
接受参数
@RequestBody
接受请求体
@RequestHeader
接受请求头
//这里分别接受请求体为Data泛型的list,接受请求头中的id为myId
public ResponseEntity courseDataSync(@RequestBody List<Data> data,@RequestHeader("id") String myId) {
//具体Java语句
}
Data类定义
@Data
@AllArgsConstructor
@NoArgsConstructor
public class UpstreamSyncCourseData {
private String id;
private String name;
private String description;
private String announcement = "";
//json中的course_start_time对应Data类中的courseStartTime变量
@JsonProperty(value = "course_start_time")
private Long courseStartTime;
@JsonProperty(value = "advance_days")
private Integer courseCreateTime;
}
输出JSON
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
public class MyTest {
public static void main(String[] args) throws JsonProcessingException {
Phone phone = new Phone();
phone.setName("小米");
phone.setColor("红色");
phone.setPrice(2000);
ObjectMapper mapper = new ObjectMapper();
String value = mapper.writeValueAsString(phone);
System.out.println(value);
//{"name":"小米","color":"红色","price":2000}
}
}
版权声明
本文为[Kramer_149]所创,转载请带上原文链接,感谢
https://blog.csdn.net/m0_46199937/article/details/118333387
边栏推荐
- [VMware] address of VMware Tools
- Dynamic subset division problem
- Small case of web login (including verification code login)
- Elmo (bilstm-crf + Elmo) (conll-2003 named entity recognition NER)
- The latest development of fed digital currency
- SQL learning window function
- Jiannanchun understood the word game
- Strange bug of cnpm
- Basic knowledge learning record
- China creates vast research infrastructure to support ambitious climate goals
猜你喜欢
Express②(路由)
美联储数字货币最新进展
try --finally
SQL learning window function
神经元与神经网络
1256: bouquet for algenon
What is the difference between blue-green publishing, rolling publishing and gray publishing?
Using Baidu Intelligent Cloud face detection interface to achieve photo quality detection
Interesting talk about network protocol
Quartus prime hardware experimental development (de2-115 board) experiment 1 CPU instruction calculator design
随机推荐
Interesting talk about network protocol
Special test 05 · double integral [Li Yanfang's whole class]
Three characteristics of volatile keyword [data visibility, prohibition of instruction rearrangement and no guarantee of operation atomicity]
The art of automation
Port occupied 1
Leetcode | 38 appearance array
Using Jupiter notebook in virtual environment
Express②(路由)
商家案例 | 运动健康APP用户促活怎么做?做好这几点足矣
How does redis solve the problems of cache avalanche, cache breakdown and cache penetration
Wechat applet
try --finally
函数只执行第一次的执行一次 once函数
JS 力扣刷题 103. 二叉树的锯齿形层序遍历
elmo(BiLSTM-CRF+elmo)(Conll-2003 命名实体识别NER)
Quartus Prime硬件实验开发(DE2-115板)实验一CPU指令运算器设计
Tensorflow Download
神经元与神经网络
Taobao released the baby prompt "your consumer protection deposit is insufficient, and the expiration protection has been started"
Analysis of redo log generated by select command