文章目錄
- 一,SpringMVC決議restful的請求引數
- --1,概述
- --2,測驗
- 創建RunApp啟動類
- 創建CarController類
- 創建前端網頁檔案
- 測驗
- 二,SpringMVC決議post的請求引數
- --0,專案結構
- --1,準備form表單
- --2,準備Student類
- --3,準備StudentController類
- --4,利用jdbc把接受到的引數入庫
- 操作cgb2106的庫, 創建tb_student表(參考Student類)
- 修改pom.xml檔案,添加jdbc的jar包的坐標
- 寫jdbc的代碼
- --5,測驗
- --6,總結
- 三,Git
- --1,概述
- --2,常用命令
- --3,使用步驟
- --4,檢查
- --5,日常操作
一,SpringMVC決議restful的請求引數

–1,概述
簡化了get方式引數的寫法
普通的get傳遞的引數 http://localhost:8080/car/get?id=100&name=張三
restful傳遞的引數 http://localhost:8080/car/get2/100/張三
–2,測驗
創建RunApp啟動類
package cn.tedu;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
//位置:必須在所有資源之上的包里
@SpringBootApplication
public class RunApp {
public static void main(String[] args) {
SpringApplication.run(RunApp.class);
}
}
創建CarController類
package cn.tedu.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
//@Controller
//@ResponseBody
@RestController
@RequestMapping("car")
public class CarController {
//注意1:: 引數串列里的引數型別,最好使用參考型別,
//如果瀏覽器沒有傳值過來就用默認值,但使用基本型別會拋例外的
//決議普通的get傳遞的引數
//http://localhost:8080/car/get?id=100&name=張三
@RequestMapping("get")
// public String get(int id,String name){
public String get(Integer id,String name){
return id+name ;
}
//決議restful傳遞的引數:簡化了get方式引數的寫法
//http://localhost:8080/car/get2/100/張三
@RequestMapping("get2/{id}/{name}")
//{x}--通過{}獲取訪問路徑中攜帶的引數,并且交給變數x保存
//@PathVariable -- 獲取{}中間變數的值
public String get2(@PathVariable Integer id,
@PathVariable String name){
return id+name;
}
//http://localhost:8080/car/get3/100/張三/red/9.9
@RequestMapping("get3/{a}/{b}/{c}/{d}")
public String get3(@PathVariable Integer a,
@PathVariable String b,
@PathVariable String c,
@PathVariable double d){
return a+b+c+d ;
}
}
創建前端網頁檔案
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<a href="http://localhost:8080/car/get?id=100&name=張三">決議get的引數 </a>
<a href="http://localhost:8080/car/get2/100/張三">決議restful風格的引數</a>
<a href="http://localhost:8080/car/get3/100/張三/red/9.9">練習決議restful風格的引數</a>
</body>
</html>
測驗


二,SpringMVC決議post的請求引數
–0,專案結構

–1,準備form表單

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
body{
font-size: 17px;/* 字號 */
background-color: lightgray;
}
/* 輸入框 */
.a{
width: 320px; /* 寬度*/
height: 50px; /* 高度 */
font-size: 20px; /* 字號 */
}
/* 保存按鈕 */
input[type="submit"]{
/* 背景色 字的顏色 邊框顏色 寬度 高度 */
background-color: #0000FF;
border-color: #0000FF;
color: white;
width: 100px;
height: 50px;
font-size: 20px; /* 字號 */
}
/* 取消按鈕 */
input[type="button"]{
/* 背景色 字的顏色 邊框顏色 寬度 高度 */
background-color: #FF69B4;
border-color: #FF69B4;
color: white;
width: 100px;
height: 50px;
font-size: 20px; /* 字號 */
}
</style>
</head>
<body>
<a href="http://localhost:8080/car/get?id=100&name=張三">決議get的引數 </a>
<a href="http://localhost:8080/car/get2/100/張三">決議restful風格的引數</a>
<a href="http://localhost:8080/car/get3/100/張三/red/9.9">練習決議restful風格的引數</a>
<!-- 利用表單,向服務器發送資料,
默認是get提交,通過method屬性修改提交方式
action屬性,指定提交的位置
-->
<form method="post" action="http://localhost:8080/stu/add">
<table>
<tr>
<td>
<h2>學生資訊管理系統MIS</h2>
</td>
</tr>
<tr>
<td>姓名:</td>
</tr>
<tr>
<td>
<input class="a" type="text" placeholder="請輸入姓名" name="name">
</td>
</tr>
<tr>
<td>年齡:</td>
</tr>
<tr>
<td>
<input class="a" type="number" placeholder="請輸入年齡" name="age">
</td>
</tr>
<tr>
<td>
性別:(單選框)
<input type="radio" name="sex" value="1"/>男
<input type="radio" name="sex" value="0"/>女
</td>
</tr>
<tr>
<td>
愛好:(多選)
<input type="checkbox" name="hobby" value="ppq"/>乒乓球
<input type="checkbox" name="hobby" value="ps"/>爬山
<input type="checkbox" name="hobby" value="cg"/>唱歌
</td>
</tr>
<tr>
<td>
學歷:(下拉框)
<select name="edu">
<option value="1">本科</option>
<option value="2">專科</option>
<option value="3">博士</option>
</select>
</td>
</tr>
<tr>
<td>
入學日期:
<input type="date" name="intime"/>
</td>
</tr>
<tr>
<td>
<input type="submit" value="保存"/>
<input type="button" value="取消"/>
</td>
</tr>
</table>
</form>
</body>
</html>
–2,準備Student類
package cn.tedu.pojo;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Arrays;
import java.util.Date;
//是Model層,用來封裝資料,就是一個pojo(封裝的屬性+get/set)
public class Student {
//屬性(成員變數):變數型別 變數名
//提交資料的型別 頁面上name屬性的值
private String name ;
private Integer age ;//避免了一些例外
private Integer sex ;
private String[] hobby ;
private Integer edu ;
//瀏覽器上提交的日期默認是String型別,2012/8/12,報錯400
//@DateTimeFormat把String的日期轉成Date日期
//pattern屬性規定了日期的格式y表示年M表示月d表示日
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date intime;
//get set tostring
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public Integer getSex() {
return sex;
}
public void setSex(Integer sex) {
this.sex = sex;
}
public String[] getHobby() {
return hobby;
}
public void setHobby(String[] hobby) {
this.hobby = hobby;
}
public Integer getEdu() {
return edu;
}
public void setEdu(Integer edu) {
this.edu = edu;
}
public Date getIntime() {
return intime;
}
public void setIntime(Date intime) {
this.intime = intime;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
", sex=" + sex +
", hobby=" + Arrays.toString(hobby) +
", edu=" + edu +
", intime=" + intime +
'}';
}
}
–3,準備StudentController類
package cn.tedu.controller;
import cn.tedu.pojo.Student;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
//是C層,控制層,用來接受請求和給出回應
@RestController
@RequestMapping("stu")
public class StudentController {
@RequestMapping("add")
public Object add(Student s){
//TODO 實作入庫insert
return s;
}
}
–4,利用jdbc把接受到的引數入庫
操作cgb2106的庫, 創建tb_student表(參考Student類)
CREATE TABLE tb_student(
id INT PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(50),
age INT,
sex INT,
hobby VARCHAR(100),
edu INT,
intime DATE
)
修改pom.xml檔案,添加jdbc的jar包的坐標
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>cgb2106boot03</artifactId>
<groupId>cn.tedu</groupId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>day14</artifactId>
<dependencies>
<!--添加jdbc的jar包依賴-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.48</version>
</dependency>
</dependencies>
</project>
寫jdbc的代碼
package cn.tedu.controller;
import cn.tedu.pojo.Student;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.util.Arrays;
//是C層,控制層,用來接受請求和給出回應
@RestController
@RequestMapping("stu")
public class StudentController {
@RequestMapping("add")
public Object add(Student s) throws Exception {
//TODO 利用jdbc,實作入庫
//注冊驅動
Class.forName("com.mysql.jdbc.Driver");
//獲取連接
String url="jdbc:mysql:///cgb2106?characterEncoding=utf8";
Connection conn = DriverManager.getConnection(url,"root","root");
//獲取傳輸器
String sql = "insert into tb_student values(null,?,?,?,?,?,?)";
PreparedStatement ps = conn.prepareStatement(sql);
//給SQL設定引數
ps.setObject(1,s.getName());
ps.setObject(2,s.getAge());
ps.setObject(3,s.getSex());
//s.getHobby()得到一個陣列,不能直接存入資料庫,需要變成串入庫
ps.setObject(4, Arrays.toString( s.getHobby() ) ) ;
ps.setObject(5,s.getEdu());
ps.setObject(6,s.getIntime());
//執行SQL
ps.executeUpdate();//執行增刪改的SQL
System.out.println("資料插入成功!");
return s;
}
}
–5,測驗

–6,總結

三,Git
–1,概述
是一個版本控制產品,用來實作資源的版本控制.
可以把資源隨時上傳到Git上,可以隨時拉取下載
好處: 快速恢復到歷史版本. 容錯性高.
遠程倉庫: 是指 Gitee官網 的網址,存你已經傳上去的資源
本地倉庫: 是指你磁盤里的一個路徑,存你即將要上傳的資源
本地索引: 是指將要提交的資料建立索引,方便查找定位
作業空間: 保存了資源的位置
程序: 作業空間 -> 本地索引 -> 本地倉庫 -> 遠程倉庫
–2,常用命令
add: 把作業空間的資源,添加到 本地索引
commit: 把本地索引的資源 提交到 本地倉庫
push: 把本地倉庫的資源 推送到 遠程倉庫
pull/clone: 把資源從遠程倉庫下載下來
–3,使用步驟
1, 安裝Git軟體
2, 在Gitee官網注冊賬號,使用賬號上傳資源
3, 創建本地倉庫, 就是在你的磁盤里建一個檔案夾,存放即將上傳的資源
僅供參考: D:\workspace\gitee\cgb2106
4, 創建遠程倉庫, 去Gitee官網創建,存本地倉庫上傳的資源
Gitee官網右上角的加號,點新建倉庫,設定倉庫名稱選成開源,ok
5, 需要在本地倉庫那里,執行一些Git命令.
git config --global user.name "cgblpx" #設定了Gitee注冊的用戶名
git config --global user.email "2250432165@qq.com" #設定了Gitee注冊的郵箱
git config --list # 查看設定資訊
git init #初始化一個Git的環境
#在你的本地倉庫創建一個檔案,準備上傳它
git add 1.txt #添加,從作業空間到本地索引
git commit -m "first commit" #從本地索引提交到本地倉庫
git remote add origin https://gitee.com/cgblpx/cgb2106test.git
#添加到指定遠程倉庫里
git push -u origin master #從本地倉庫推送到遠程倉庫
Username for 'https://gitee.com': #輸入自己注冊的賬號
Password for 'https://cgblpx@gitee.com': #輸入自己注冊的密碼
–4,檢查
重繪Gitee官網就有剛傳上去的資源啦
–5,日常操作
1, 把你要提交的資源拷貝到 本地倉庫
2, 在本地倉庫處, 執行以下Git命令提交資源
3, 把遠程倉庫的資源下載到本地
git add .
git commit -m "test"
git push -u origin master
git clone 再加上要下載的資源的網址
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/293663.html
標籤:其他
上一篇:嵌入式單片機產品開發設計框架
