Java Web开发-简单的Java Web项目(含访问本地MySQL)-应用例程

一、例程简介

    本例程可配合Android例程MyApplication测试使用,包含一个TestServlet,用于接收POST请求,访问本地MySQL数据并返回对应消息。

    Android例程的开发请看:http://blog.csdn.net/sinat_30685475/article/details/52126549。

    搭建 Java Web 开发环境(包含Eclipse、Tomcat和MySQL的安装配置)的步骤请看:http://blog.csdn.net/sinat_30685475/article/details/52117384。


二、新建项目

    打开 Eclipse , [File] - [New] - [Dynamic Web Project] ,输入项目名称, [Next] 到最后一页,勾选 “Generate web.xml deployment descriptor”。


三、创建服务器项目主页

    为了在测试Web项目的时候能在浏览器上看到点东西,我们在项目中加入一个 index.html 文件作为访问的默认主页。

    1、展开项目目录,在 WebContent 文件夹下 [New] 一个 [HTML File],命名为 index.html,根据需要输入标题和内容,例如:

<html>
<head>
<meta charset="UTF-8">
<title>MyWebProject</title>
</head>
<body>
<h2>Hello World!</h2>
</body>
</html>
    2、然后,还要在 WebContent/WEB-INF 文件夹下的 web.xml 里添加一些内容,这个文件就像一个目录,将程序和地址关联起来。项目要执行 Servlet 和 html 等都要在这里正确声明,否则会报 404 错误。现在将web.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" id="WebApp_ID" version="3.1">
  <display-name>MyWebProject</display-name>
  
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
  </welcome-file-list>
  
</web-app>
    3、现在,右键项目, [Run as] - [Run on Server] ,运行到本地 Tomcat 服务器后可看到 “http://localhost/MyWebProject/”地址显示出 index.html 对应的页面。注意 Tomcat服务器的默认端口号为8080,这里设为了80,设置方法:找到对应 Tomcat Server 目录下的 server.xml,找到:

    <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
    “8080”改为“80”。

四、创建Servlet

    1、在工程目录 Java Resources/src 文件夹下 [New] - [Servlet] ,命名为 TestServlet ,内容如下:

package com.example.z.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;

import com.example.z.service.TestService;

//@WebServlet("/TestServlet")
public class TestServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;

    public TestServlet() {
        super();
    }

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doPost(request, response);
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// 返回字符串
		String responseMsg="FAIL";
		// 输出流
		PrintWriter out = response.getWriter();
		// 设置编码形式
		request.setCharacterEncoding("utf-8");	
		// 获取传入数据
		String str = request.getParameter("str");

		// 访问数据库
		int value = TestService.testSelect(str);
		if(value == 11) {
			responseMsg = "SUCCESS";
		}
		out.print(responseMsg);
	}

}
        当提示无法import javax.servlet,需要在项目导入对应的 .jar 包。右键项目, [Properties] - [Java Build Path] ,选中 [Libraries] 选项卡,点击 [Add External JARs...],选中 Tomcat 安装目录下 lib 文件夹下的 servlet-api.jar 。

        Servlet 的作用主要是读取POST消息中的数据,访问 MySQL 等操作通过调用自定义的 TestService 类中的方法实现。

        注意由于我们已经添加了 web.xml 文件,所以要去掉自动生成的 “@WebServlet("/TestServlet")” 。现在继续修改 web.xml ,加入关于 TestServlet 的信息:

<?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" id="WebApp_ID" version="3.1">
  <display-name>MyWebProject</display-name>
  
  <servlet>
    <servlet-name>TestServlet</servlet-name>
    <servlet-class>  
            com.example.z.servlet.TestServlet  
    </servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>TestServlet</servlet-name>
    <url-pattern>/TestServlet</url-pattern>
  </servlet-mapping>
  
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
  </welcome-file-list>
  
</web-app>


五、TestService类

package com.example.z.service;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import com.example.z.manager.DBManager;

public class TestService {
	static PreparedStatement pstmt = null;
	static ResultSet rs = null;
	
	public static int testSelect(String str) {
		int key = 0;
		// 执行 SQL 查询语句
		String sql = "select * from t_test where name='" + str +"'";
		try {	
			Connection con = DBManager.getConnection();
			pstmt = con.prepareStatement(sql);
			try{
				rs = pstmt.executeQuery();
				// 查询结果
				if(rs.next()){	
					key = rs.getInt("key");
				}
				pstmt.close();
				con.close();
			}catch(Exception e){
				e.printStackTrace();
			}
		}catch(Exception e){
			e.printStackTrace();
		}
		return key;
	}
}
        自定义类 DBManager 用于连接数据库。该过程需要在 Tomcat 安装目录 lib 文件夹下放入用于连接 MySQL 的 .jar包 “mysql-connector-java-5.1.39-bin.jar” 。我已经在本地 MySQL 中创建了对应的数据库和表格,并插入的数据。执行的 SQL 语句为:

create database db_test;

use db_test;

create table `t_test`(
 `id` int not null auto_increment,
 `name` varchar(100) default '',
 `key` int default 0,
 primary key(`id`)
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

insert into t_test(`name`,`key`) values ('hello',22);

六、DBManager类
package com.example.z.manager;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class DBManager {
	// 加载的驱动
	private static final String DRIVER_CLASS = "com.mysql.jdbc.Driver";
	// 数据库URL
	private static final String DATABASE_URL = "jdbc:mysql://localhost:3306/db_test?useUnicode=true&characterEncoding=utf8";
	// 数据库连接用户名
	private static final String DATABASE_USERNAME = "Admin";
	// 数据库连接密码
	private static final String DATEBASE_PASSWORD = "123456";
	public static Connection getConnection() throws SQLException {
		try {
			Class.forName(DRIVER_CLASS);
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
		Connection con = DriverManager.getConnection(DATABASE_URL,DATABASE_USERNAME, DATEBASE_PASSWORD);
		return con;
	}
}

七、项目结构

        经过以上步骤,本次Java Web项目已经完成。下面提供工程目录作为参考:



八、代码下载

    CSDN CODE:https://code.csdn.net/sinat_30685475/mywebproject/tree/master。

    CSDN 下载:http://download.csdn.net/detail/sinat_30685475/9596363。


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
酒店管理系统分为前台和后台两个部分,其中后台供管理员管理系统之用,包括客房类型设置模块、客房设置模块以及操作员设置三个子模块,具体的功能模块如下。 客房类型设置模块:该模块用来管理酒店的所有客房类型,包括新增客房类型、编辑已有客房类型、删除客房类型等功能。 客房设置模块:该模块用来管理酒店的所有客房信息,包括新增客房、编辑已有客房、删除客房等功能。 操作员设置模块:该模块用来管理酒店的操作员信息,包括新增操作员、编辑已有操作员信息、删除操作信息等功能。 系统前台供酒店所有工作人员使用,包括入住登记模块、结账模块、预定模块、客户管理模块以及业务统计五个模块。具体的功能模块如下。 入住登记模块:该模块用来登记客户的入住信息,其中入住信息包括登记信息、客人信息以及费用信息三部分。 结账模块:该模块用来处理客户的退房信息,只需要知道客户所住的房间号码,就能进行退房结账。 预定模块:该模块用来处理客户的预定信息,除了可以新增预定信息外,还可以对已有的预定信息进行管理。 客户管理模块:该模块用来管理客户的登记信息,包括新增客户信息、编译已有客户信息、删除客户信息等功能。 业务统计模块:该模块用来统计酒店的客房出租率,并且已图形报表的形式来显示出租率信息。 本系统的开发工具具体如下。 系统开发平台:MyEclipse 6.5。 数据库管理系统软件:MySQL 5.0。 java开发包:JDK 5.0以上。 Web服务器:Tomcat 6.0。 本系统采用MVC架构模式开发,具体技术如下。 AJAX框架:使用ExtJS技术开发 显示层:使用JSP技术开发 数据访问层:使用DAO模式开发 持久层:使用Hibernate框架开发 首页访问地址 :http://localhost:8080/JavaPrj_9/首页配置 页面 修改 打开web.xml 修改 即可 /WEB-INF/pages/userLogin.jsp 复制代码 数据库配置 为hotel-hibernate.xml 文件 测试了将近2个小时 系统跑的还不错 一下小细节 bug 大家可以自己去调整下
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值