手动建立JavaEE项目

为了解“徒手”建立一个web应用,此博客建立简单过程
1、在任意一个目录下,建立一个文件夹,取名字 webDemo 。这个应用名字。
2、在 webDemo 内建立一个 WEB-INF 文件夹,此处大小写敏感。
3、在 Tomcat 的项目例子中(tomcat 的 webapps 目录内有例子),复制一个 web.xml 文件。放到 WEB-INF 文件夹下。
4、修改复制后的 web.xml 文件,将该文件修改成只有一个根目录的 XML 文件。修改后的 web.xml 样子如下:

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                      http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  version="3.0"
  metadata-complete="true">
  
</web-app>

5、在 WEB-INF 文件夹下新疆两个文件夹 classes 和 lib 。这两种文件夹的作用基本上差不多,都是放置 JAVA 类文件。区别在于 classes 放的都是 *.class 文件,而 lib 里面放的是打包后的 jar 文件。
6、经过以上步骤,就已经建立了空的 java web 应用了。把 webDemo 复制到 Tomcat 的 webapps 目录下。打开 Tomcat 就可以访问这个应用了。
7.1、对于JSP文件,在应用跟目录下(webDemo)下,建立 JSP 文件。就可以访问了。例如建立 A.jsp。 访问路径就是:
http://localhost:8888/webDemo/A.jsp
7.2、对于.java文件,前面讨论过手动建立jsp的项目,jsp是tomcat服务器负责编译执行,所以配置相对简单,而Servlet需要先把java源文件编译成字节码class文件,然后再执行,所以需要servlet-api.jar这个包的支持,使用集成的开发环境时,IDE帮助我们做了一些事情,所以手动配置和IDE的原理是一样的,xml文件的编写方式也是一样的。
7.2.1、编写简单的Servlet:

package servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/*
 * 继承于Servlet
 */
public class HelloServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        System.out.println("处理GET请求");
        //获取输入
        PrintWriter out = response.getWriter();
        //指定输出文件类型和编码
        response.setContentType("text/html; charset=utf-8");
        //开始输出
        out.println("<strong>Hello Servlet !!!</strong>");
    }
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request, response);
    }
}

7.2.2、这个java源文件是不能直接用javac编译的,原因是因为我们没有添加servlet的jar包,有三种方法来配置编译环境:
  第一个方法是让之前配置过JDK去加载jar包进行编译,我们复制tomcat服务器目录下lib目录中的servlet-api.jar文件,复制到之前配置好的%JAVA_HOME%\jre\lib\ext\下,如下图:
在这里插入图片描述
  第二种方法是,还可以在之前配置好的环境变量CLASSPATH最后追加servlet-api.jar的路径,比如我的是:;%CATALINA_HOME%\lib\servlet-api.jar,然后确定即可生效,这两种方法都可以,但是推荐第一种,因为jar包复制过去,以后服务器目录改变了也不影响
  第三中方法这里提一下,文献如下:

编译java文件的命令都知道,是javac aaa.java .
但是,如果你这个java文件中,引入其他的jar包,需要用到-cp命令。
加载单个jar包。需要下载用到的jar包,并引入目录。
javac -cp C:\Users\whr-pc\Desktop\classpath\img\json-lib-2.4-jdk15.jar Xml2Json.java
加载多个jar包,中级用 ; 符号隔开。
javac -cp C:\Users\whr-pc\Desktop\classpath\img\json-lib-2.4-jdk15.jar;jdom-1.0.jar;spring-json-1.3.1.jar Xml2Json.java
生成class文件后,执行class文件,也需要用 -cp 命令加载jar包。就可以了
java -cp .;pinyin4j-2.5.0.jar Hello

7.2.3、然后我们就可以直接编译java源文件了,我使用的编码是UTF-8的,所以用:javac -encoding utf-8 HelloServlet.java进行编译
在这里插入图片描述
7.2.4、那么编译成功,同目录下会出现一个HelloServlet.class的字节码文件,然后我们复制该文件到classes/servlet/下,就是路径要和package声明包的保持一致,然后配置web.xml文件,当然在Servlet3.0之后还可以用注解进行url配置,xml文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" metadata-complete="true" version="3.1">
  <welcome-file-list>
    <welcome-file>/index.jsp</welcome-file>
  </welcome-file-list>

  <servlet>
    <servlet-name>HelloServlet</servlet-name>
    <servlet-class>servlet.HelloServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>HelloServlet</servlet-name>
    <url-pattern>/servlet/HelloServlet</url-pattern>
  </servlet-mapping>
  <servlet-name>HelloServlet</servlet-name>
    <url-pattern>/servlet/HelloServlet/</url-pattern>
  </servlet-mapping>
  
</web-app>

这里配置和2个url-pattern用任何一个都能访问,注意的配置,要把包写完整,写好之后保存;然后启动tomcat,输入http://localhost:8080/MyFirstServlet/servlet/HelloServlet,访问就可以了
在这里插入图片描述
以上就是手动配置的过程,我们可以把IDE的项目手动的移植过来,也可以自由的配置JavaBean和其他的业务逻辑类等,只要原理明白了其他的就简单了,这样就不会出现只会使用IDE的被动,开发起来也更加灵活

<think>好的,用户想了解如何在Java EE中创建和连接数据库。首先,我需要根据提供的引用内容来整理步骤。引用[1]提到使用JDBC连接MySQL数据库,引用[2]和[3]解释了JDBC的基本概念,引用[4]和[5]提到了驱动包和连接代码的位置。 首先,应该从环境准备开始,比如安装MySQL和下载JDBC驱动。然后创建数据库和表,这部分可能需要用户手动在MySQL中执行SQL语句。接下来是Java EE项目的配置,把驱动包添加到项目中,比如在Eclipse的lib目录下。 然后是编写连接代码,需要加载驱动,使用DriverManager获取连接,处理异常。记得关闭资源,所以需要在finally块中关闭连接。可能还需要示例代码,展示如何执行查询或更新操作。 用户可能还会遇到常见问题,比如驱动类名错误、URL格式不正确,或者权限问题。需要提醒他们检查这些点。最后,生成相关的问题,帮助用户深入理解,比如优化连接池、预处理语句的作用,或者事务管理的方法。 需要确保步骤清晰,代码正确,并且引用对应的参考资料。同时,按照系统指令,数学公式用$...$,独立公式用$$...$$,但这里可能用不上数学公式,主要关注代码和步骤的正确性。最后用中文回答,结构分步,引用标识放在适当的位置。</think>### Java EE创建和连接数据库教程 #### 一、环境准备 1. **安装MySQL数据库** 需先安装MySQL Server并创建数据库实例,可通过MySQL Workbench或命令行操作。例如创建数据库`test_db`: ```sql CREATE DATABASE test_db; ``` 2. **下载JDBC驱动** 从MySQL官网获取驱动包`mysql-connector-java-x.x.x.jar`(如版本5.1.41)[^5],这是Java连接MySQL的核心依赖。 --- #### 二、Java EE项目配置 1. **添加驱动包** 在Eclipse等IDE中,将驱动包放入项目的`WebContent/WEB-INF/lib`目录,并添加到构建路径[^5]。 --- #### 三、数据库连接步骤 1. **加载驱动类** 使用`Class.forName()`显式加载MySQL驱动: ```java Class.forName("com.mysql.jdbc.Driver"); ``` 2. **建立连接** 通过`DriverManager.getConnection()`获取数据库连接对象: ```java String url = "jdbc:mysql://localhost:3306/test_db?useSSL=false"; String user = "root"; String password = "123456"; Connection conn = DriverManager.getConnection(url, user, password); ``` > **注意**:URL中需指定数据库名称和参数(如禁用SSL)[^4]。 3. **异常处理** 使用`try-with-resources`或`finally`块确保资源释放: ```java try (Connection conn = DriverManager.getConnection(url, user, password)) { // 执行数据库操作 } catch (SQLException e) { e.printStackTrace(); } ``` --- #### 四、操作数据库示例 ```java public class JdbcDemo { public static void main(String[] args) { String sql = "INSERT INTO users(name) VALUES('peter')"; try (Connection conn = DriverManager.getConnection(url, user, password); Statement stmt = conn.createStatement()) { int rows = stmt.executeUpdate(sql); System.out.println("影响行数:" + rows); } catch (SQLException e) { e.printStackTrace(); } } } ``` --- #### 五、常见问题 1. **驱动类加载失败** 检查驱动包是否已正确添加到项目,类名是否为`com.mysql.jdbc.Driver`[^3]。 2. **连接超时** 确认MySQL服务已启动,端口号(默认3306)未被防火墙拦截。 3. **权限错误** 确保数据库用户具有对应权限,可通过`GRANT`语句授权[^1]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值