idea中java及java web項(xiàng)目的常見問題及解決
1、亂碼問題,主要有幾處地方,需要檢查
①確保文件編碼,其實(shí)主要就是在idea啟動(dòng)文件中,增加了 -Dfile.encoding=UTF-8的設(shè)置
②編輯器默認(rèn)編碼,都改為UTF-8
③Tomcat的運(yùn)行配置,編碼也改為UTF-8,同樣使用:-Dfile.encoding=UTF-8
④解決cmd中的亂碼問題,注冊(cè)表中,增加CodePage頁,路徑如下圖:雙擊startup.bat時(shí)也不會(huì)亂碼了。
2、idea中web項(xiàng)目的創(chuàng)建步驟
①新建一個(gè)java工程。
②添加web framework支持
在項(xiàng)目名稱上連按兩次shift,彈出界面。
點(diǎn)Add Framework Support,選擇web即可添加。中文界面名稱可能為:添加框架支持
注意項(xiàng)目類型不要用空項(xiàng)目,不然Framework的檢測(cè)可能會(huì)出錯(cuò),導(dǎo)致,添加框架支持時(shí),找不到web選項(xiàng)。
3、web支持添加后,添加tomcat的依賴庫
核心是將Tomcat的lib文件夾添加到項(xiàng)目的庫中:
4、編寫第一個(gè)servlet程序,使用注解方式
在工程的src中,添加一個(gè)包,如com.rainpet,添加一個(gè)java類,如Demo1。
圖如下:
注意:文件名和類名一致。
代碼如下:
package com.rainpet; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; @WebServlet("/Demo1") public class Demo1 extends HttpServlet { String message="hello"; @Override public void init() throws ServletException { //super.init(); this.message="hello world 2322"; System.out.println("init 執(zhí)行了2222!"); } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //super.doGet(req, resp); resp.setContentType("text/html;charset=utf-8"); req.setCharacterEncoding("utf-8"); PrintWriter out = resp.getWriter(); out.println("The Parameter are 222222222 123123:"+req.getParameter("name1")+" message222222222666:"+this.message); //out.println("The Parameter are :"); } }
5、tomcat的部署路徑
application context就是項(xiàng)目預(yù)覽時(shí)的訪問路徑,如我的訪問路徑就是http://localhost:8080/web2:
頁面已經(jīng)跑起來了:
6、war的打包問題
使用方法:
選擇合適的Artifact,Build即可在對(duì)應(yīng)的輸出目錄中找到war文件啦。
找到文件:
部署到tomcat根目錄下即可,比如我的Tomcat:
啟動(dòng)tomcat環(huán)境,訪問http://localhost:8080/web2_war/Demo1即可。
訪問時(shí),其實(shí)是自動(dòng)解壓縮war文件,文件名決定訪問路徑。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
解決安裝mysqlclient的時(shí)候出現(xiàn)Microsoft Visual C++ 14.0 is required報(bào)錯(cuò)
這篇文章主要介紹了解決安裝mysqlclient的時(shí)候出現(xiàn)Microsoft Visual C++ 14.0 is required報(bào)錯(cuò)問題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-11-11Java 時(shí)間轉(zhuǎn)換的實(shí)例代碼
下面小編就為大家?guī)硪黄狫ava 時(shí)間轉(zhuǎn)換的實(shí)例代碼。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-07-07Java微信小程序oss圖片上傳的實(shí)現(xiàn)方法
這篇文章主要介紹了Java微信小程序oss圖片上傳的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12關(guān)于微服務(wù)使用Dubbo設(shè)置的端口和server.port的區(qū)別
這篇文章主要介紹了關(guān)于微服務(wù)使用Dubbo設(shè)置的端口和server.port的區(qū)別,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12基于JSON實(shí)現(xiàn)傳輸byte數(shù)組過程解析
這篇文章主要介紹了基于JSON實(shí)現(xiàn)傳輸byte數(shù)組過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06spring boot利用docker構(gòu)建gradle項(xiàng)目的實(shí)現(xiàn)步驟
這篇文章主要給大家介紹了關(guān)于spring boot利用docker構(gòu)建gradle項(xiàng)目的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用spring boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2018-05-05Spring MVC保證Controller并發(fā)安全的方法小結(jié)
在 Spring MVC 中,默認(rèn)情況下,@Controller 是單例的,這意味著所有請(qǐng)求共享一個(gè) Controller 實(shí)例,為確保并發(fā)安全,Spring 并不會(huì)自動(dòng)對(duì) Controller 進(jìn)行線程安全保護(hù),本文給大家介紹了Spring MVC保證Controller并發(fā)安全的方法,需要的朋友可以參考下2024-11-11