第一次做前端,以前零星学过一点H5和PHP,完全没学过jsp,是的完全没学过。这两天周末学了下,做出一个前端的雏形( 比较丑,哈哈)
首先说下,我选的Netbeans IDE这个,主要是为了方便我学习和一键测试之用。我是新手,目的呢很简单就是方便纠错。和我一样的新手童鞋,请注意,Netbeans IDE和Netbeans是不一样的两个Java 桌面IDE,别下错了。另外,如果没有人指导完全是自己搞的话,建议先做一点基本功(Java基础--Servlet是Java写的啊!!!)。
说下环境:Ubuntu + Netbeans IDE8.1
装Netbeans IDE你需要安装jdk,至于怎么安装jdk这里不做讲解,网上大把的都没错,安装Netbeans IDE8.1也是so easy啊,没有经验的童鞋注意了,安装的选项记得把tomcat勾选了,不然tomcat是不会默认安装的。
接下来打开IDE,写一段Java代码测试一下很正常吧。幸福往往来的很突然的,当你有这样的想法的时候,就会遇到这个IDE的第一个坑了,yes!没错,就是第一个坑!没有坑的人生是不完整的,不是吗?你会神奇滴发现,这个专门为Java写的IDE居然不但不能写Java代码,还有弹窗!!!WTF?!!是不是有点崩溃?
平息一下心中的怒火,不要慌,仔细看就会发现是因为它找不到JDK环境变量,然后去Netbeans IDE官网,他会告诉你让你在IDE安装的目录(当前用户名下的目录里),修改netbeans_jdkhome变量。
比如,我的JDK环境变量如下:
export JAVA_HOME=/opt/jdk/jdk1.8.0_131
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
export PATH=/home/wlw/Qt5.9.0/5.9/gcc_64/bin:$PATH
export PATH=/opt/FriendlyARM/toolschain/4.5.1/bin:$PATH
然后就去~/netbeans-8.1/etc/netbeans.conf找到netbeans_jdkhome,将其设置为$
JAVA_HOME即可,然后重启IDE,然后创建Java web项目你就可以去做jsp和网页了。
接下来的一步比较关键,把tomcat目录下~/apache-tomcat-8.0.27/webapps/examples/WEB-INF/lib中的两个jar包拷贝到你创建项目目录的WEB-INF/lib中,如果WEB-INF下没有lib目录,可自行创建,否则会有问题。
1、jsp
对于jsp的语法,为了方便小白入门,这里也不做讲解。jsp做的页面:
login.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
Login
Welcome!
2、在源代码目录下创建一个包,然后你会发现他会自动地给你挪到Java目录下去了,这里和有些地方不一样,不要惊慌
3、创建servlet,注意你需要选择xml映射什么的,我是初学者,不太懂,直接上代码了:
public class doLogin extends HttpServlet {
/**
* Processes requests for both HTTP GET
and POST
* methods.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
/* TODO output your page here. You may use following sample code. */
out.println("");
out.println("");
out.println("");
out.println("Servlet doLogin ");
out.println("");
out.println("");
out.println("Servlet doLogin at " + request.getContextPath() + "
");
out.println("");
out.println("");
}
}
//
/**
* Handles the HTTP GET
method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Handles the HTTP POST
method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}
/**
* Returns a short description of the servlet.
*
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}//
}