知識
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價值,我們在追求其視覺表現(xiàn)的同時,更側(cè)重于功能的便捷,營銷的便利,運營的高效,讓網(wǎng)站成為營銷工具,讓軟件能切實提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序為后期升級提供便捷的支持!
Spring Boot:application/x-www-form-urlencoded;char
發(fā)表時間:2020-10-19
發(fā)布人:葵宇科技
瀏覽次數(shù):98
Spring -Boot:Resolved [org.springframework.web.HttpMediaTypeNotSupportedException: Content type ‘a(chǎn)pplication/x-www-form-urlencoded;charset=UTF-8’ not supported]
問題的出現(xiàn)是如許的,我早年端界面提交數(shù)據(jù)信息,然后在controller層以對象的情勢吸法術(shù)據(jù)
前端界面:
<form action="/user/saveuser" method="post">
用戶ID:<input name="id" type="text"><br>
用戶姓名:<input type="text" name="username"><br>
用戶年紀:<input type="text" name="age"><br>
賬戶金額:<input type="text" name="price"><br>
<input type="submit" value="提交">
</form>
controller層
@RequestMapping(value = "saveuser",method=RequestMethod.POST)
public String saveUser(@RequestBody User user){
System.out.println("user"+user);
userMapper.save(user);
return "redirect:/user/findAll";
}
mapper:
@Override
public void save(User user) {
jdbcTemplate.update("insert into user values (?,?,?,?)",user.getId(),user.getUsername(),user.getAge(),user.getPrice());
}
pojo:
@Data
public class User {
@NotNull(message = "id不克不及為空")
private int id;
@NotEmpty(message = "姓名不克不及為空")
@Length(min = 2,message = "字符串長度不克不及小于二")
private String username;
private int age;
@Min(value = 60,message = "價格必須大年夜于60")
private double price;
}
本認為這個小demo會毫無懸念的運行成功,結(jié)不雅報了上述缺點,一臉懵逼,因為沒有碰見過,作為一個新手,毫不遲疑的就直接搜百度搜谷歌了,乍一看,總結(jié)一下本來說到底是編碼或者json的問題導致的,這個就R單了??墒瞧缫暢饠衬憔湾e了,網(wǎng)上的解答很具體,然則我的問題對他們?nèi)棵庖?#xff0c;我大年夜懵逼到加倍懵逼。
第一個解答是說傳json時,設(shè)置content-type,肯定跟Ajax相干,然則我又沒寫Ajax,只是通俗的form表單,但我照樣測驗測驗了一下,我用了@RequestBody,在我前端傳過來的數(shù)據(jù)會主動與實體類對象進行匹配,然則數(shù)據(jù)完全過不來,所以我改用了@RequestParam,然后直接用String類型進行接收打印到控制臺,看看到底是怎么回事
更改后:
@RequestMapping(value = "saveuser",method=RequestMethod.POST)
public String saveUser(@RequestParam String user){
System.out.println("user"+user);
// userMapper.save(user);
return "redirect:/user/findAll";
結(jié)不雅打印臺出現(xiàn)一段亂碼,且打印在控制滔喔贍并不是以{ }情勢的,所以我肯定了傳過來的數(shù)據(jù)不是json格局。那么就是亂碼了。
開端查亂碼,然后就有了我在yml中寫了一堆編碼的器械
thymeleaf:
prefix: classpath:/templates/
suffix: .html
encoding: UTF-8
mode: HTML5
http:
encoding:
charset: UTF-8
enabled: true
force: true
messages:
encoding: UTF-8
server:
port: 8080
tomcat:
uri-encoding: UTF-8
然后就是前端界面直接以記事本的情勢打開改編碼,但都無濟于事。
然后歸去從新看了spring mvc,針對前端基于對象添加的相干屬性,到了controller層是直接進行匹配的,而我傳過來的也不是json格局,所以我直接就把@RequestBody給刪掉落,我丟,給網(wǎng)膳綾欽底繞暈了(不怪網(wǎng)上怪本身),想想這么簡單的問題(做出來才簡單)搞了這么久,浪費這么長時光,還浪費這么長時光記錄這么簡單的問題,沒缺點。
下次碰著問題,第一個想著本身先解試一下,不要一味的依附網(wǎng)上的解答,有時刻也可能事倍功半,就像我浪費的時光!
相關(guān)案例查看更多
相關(guān)閱讀
- 網(wǎng)絡公司聯(lián)系方式
- web服務
- 云南小程序開發(fā)制作
- 云南網(wǎng)站設(shè)計
- 云南網(wǎng)站制作
- 重慶網(wǎng)站建設(shè)公司
- 云南小程序開發(fā)首選品牌
- 云南網(wǎng)站制作哪家好
- 云南小程序開發(fā)課程
- 網(wǎng)站建設(shè)公司哪家好
- 云南建設(shè)廳網(wǎng)站首頁
- 網(wǎng)站建設(shè)費用
- 云南省建設(shè)廳網(wǎng)站官網(wǎng)
- 昆明小程序公司
- 小程序開發(fā)聯(lián)系方式
- 云南網(wǎng)站建設(shè)公司哪家好
- 保山小程序開發(fā)
- 云南小程序開發(fā)公司推薦
- 網(wǎng)絡公司電話
- 買小程序被騙
- 網(wǎng)站建設(shè)靠譜公司
- 網(wǎng)站收錄
- 汽車報廢軟件
- 云南電商網(wǎng)站建設(shè)
- 云南網(wǎng)站建設(shè)報價
- 百度自然排名
- 昆明軟件公司
- 云南省城鄉(xiāng)建設(shè)廳網(wǎng)站
- 網(wǎng)絡營銷
- 網(wǎng)絡公司