Web开发学习之路--Eclipse+Tomcat+mysql之初体验

版权声明:本文为博主东月之神原创文章,未经博主允许不得转载。 https://blog.csdn.net/eastmoon502136/article/details/50783334

    学习了一段时间android,正好要用到android和服务器之间的交互,既然要学习android,那么就涉猎下服务器端的开发了,以前学过php,用thinkphp很快可以搭建起来,但是android是java的,web用java来写不是更好,主要实现聊天的话得需要socket长连接,用php不好整。既然要学习Web开发,那最开始的搭建服务器最最根本了,这里用了eclipse+tomcat+mysql来实现之。

    首先下载eclipse了,这里我用的4.4.1的版本,tomcat7.0,至于这个eclipse+tomcat的环境的话相信网上的资料已经非常的多了,这里就不介绍了。关于mysql可以参考这里:http://www.cnblogs.com/macro-cheng/archive/2011/10/25/mysql-001.html。特别注意的是,下载安装好了之后会有弹出来临时的密码,这个需要记住的。

    这里假设已经安装搭建好了环境了。启动eclipse,然后新建一个tomcat的server:


    接着next


    这里选择了tomcat7.0,然后按照要求来,因为我已经建立了一个dynamic的web,所以添加到server中就好了。


    好了,这样server就建立好了,接着我们创建一个工程:


    按照步骤一步一步来

  

    已经创建了hello,所以这里创建hello1,接着下一步:


    自动添加web.xml用来配置。接着把hello1添加到server中去,通过Add and Remove,如下:


    接着new一个index.jsp文件:


    然后添加代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>hello</title>
</head>
<body>
	这是我们第2个web项目,哈哈
</body>
</html>

    运行看下效果:


    好了,基本上环境都搭建好了。

    先在mysql 数据库里面新建下表:一般mysql安装在/usr/local/mysql/bin下,cd 到该目录下,执行命令:

    ./mysql -u root -p

    进入到mysql中,执行show databases;查看当前的database,新建test数据库:

   接着我们新建一个表Student:


     然后查看下表建立的没有,执行show tables;


    可以发现里面有了student表。 接着插入两个student的信息;


    再查看下表中的信息:


    可以发现已经有了两个student的信息了。

    然后参考了网上的代码,简单实现下信息的增删改查,并解决了中文乱码的问题:

    首先新建Student类:

package com.example;

public class Student {
	private String sid;  
    private String name;  
    private String age;  
  
    public String getSid() {  
        return sid;  
    }  
  
    public void setSid(String sid) {  
        this.sid = sid;  
    }  
  
    public String getName() {  
        return name;  
    }  
  
    public void setName(String name) {  
        this.name = name;  
    }  
  
    public String getAge() {  
        return age;  
    }  
  
    public void setAge(String age) {  
        this.age = age;  
    }  

}

    最简单的设置和获取id,name和age的方法。

    接着是连接数据库,更新信息,查询信息的方法:

package com.example;
import java.sql.Connection;  
import java.sql.DriverManager;  
import java.sql.ResultSet;  
import java.sql.SQLException;  
import java.sql.Statement;  
import java.util.ArrayList;

import com.example.Student;

public class ConnectDB {
	private static Connection conn = null;
	private static Statement stmt = null;
	private static ResultSet rs = null;
	
	public static void startConnect() {
		try {
			Class.forName("com.mysql.jdbc.Driver");
			try {
				conn = DriverManager.getConnection(
						"jdbc:MySQL://127.0.0.1:3306/test", "root", "你的密码"); 
			} catch (SQLException e) {
				// TODO: handle exception
				e.printStackTrace();
			}
		} catch (ClassNotFoundException e) {
			// TODO: handle exception
			e.printStackTrace();
		}
	}
	
	public static void endConnect() throws SQLException {   
        //关闭连接  
        if (rs != null) {  
            rs.close();  
            rs = null;  
        }  
        if (stmt != null) {  
            stmt.close();  
            stmt = null;  
        }  
        if (conn != null) {  
            conn.close();  
            conn = null;  
        }  
    }  
  
    public static void update(String sql) throws SQLException {   
  
        //数据库更新  
        startConnect(); 
        stmt = conn.createStatement();  
        stmt.executeUpdate(sql);  
        endConnect();  
    }  
  
    public static ArrayList getList1(String sql) throws SQLException {  
  
        //数据库查询  
        ArrayList list = new ArrayList();  
        startConnect(); 
        stmt = conn.createStatement();  
        rs = stmt.executeQuery(sql);  
        while (rs.next()) {  
            Student st = new Student();  
            st.setSid(rs.getString("sid"));  
            st.setName(rs.getString("sname"));
            st.setAge(rs.getString("sage"));  
            list.add(st);  
        }  
        endConnect();  
        return list;  
    }  
  
}
    然后实现几个简单的jsp代码,首先是list.jsp:

<%@page import="com.example.Student"%>
<%@page import="com.example.ConnectDB"%>
<%@ page language="java" import="com.example.ConnectDB,com.example.Student,java.util.*"  
    pageEncoding="gbk"%>   
    <%--jsp头文件,包括引入的包和支持语言,gbk为支持中文--%>  
<%  
	ArrayList list = ConnectDB.getList1("select sid,sname,sage from student"); //获得test表中所有数据并以列表形式返回  
%>  
  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
<html>  
    <head>  
        <title>My JSP 'list.jsp' starting page</title>  
    </head>  
    <body>  
        <input type="button" name="bottom" value="添加新学生"  
            onclick="javascript:window.location.href='add.jsp'">  
        <br>  
        <br>  
        <table border="1">  
            <tr>  
                <td>  
                    编号  
                </td>  
                <td>  
                    姓名  
                </td>  
                <td>  
                    年龄  
                </td>  
                <td>  
                    操作  
                </td>  
            </tr>  
            <%  
                    {  
                    for (Iterator it = list.iterator(); it.hasNext();) {  
                        Student s = (Student) it.next();  
            %>  
            <tr>  
                <td><%=s.getSid()%></td>  
                <td><%=s.getName()%></td>  
                <td><%=s.getAge()%></td>  
                <td>  
                    <a href="update.jsp?sid=<%=s.getSid()%>">修改</a>  
                    <a href="delete.jsp?sid=<%=s.getSid()%>"  
                        onclick="return confirm('确定删除?');">删除</a>  
                </td>  
            </tr>  
            <%  
                }  
                }  
            %>  
        </table>  
    </body>  
</html>  

    这里通过调用了ConnectDB的getlist1方法来显示目前数据库test的student表中的数据信息。接着是添加的jsp:

<%@ page language="java" pageEncoding="utf-8"%>  
<%
	request.setCharacterEncoding("UTF-8"); 
	response.setCharacterEncoding("UTF-8"); 
	response.setContentType("text/html; charset=utf-8"); 
%>  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
<html>  
    <head>  
        <title>add</title>  
    </head>  
    <body>  
        <form action="addInfo.jsp" method="post">  
            提交到addinfo.jsp  
            <p>  
                添加学生:  
            </p>  
            SID:  
            <input type="text" name="sid">  
            <br>  
            <br>  
            姓名:  
            <input type="text" name="sname">  
            <br>  
            <br>  
            年龄:  
            <input type="text" name="sage">  
            <br>  
            <br>  
            <input type="submit" name="submit" value="提交">  
        </form>  
    </body>  
</html>  
    这里把数据提交到addinfo.jsp:

<%@page import="com.example.ConnectDB"%>
<%@ page language="java" import="com.example.ConnectDB" pageEncoding="UTF-8"%>  
<%  
	request.setCharacterEncoding("UTF-8"); 
	response.setCharacterEncoding("UTF-8"); 
	response.setContentType("text/html; charset=utf-8"); 

	String sid=new String(request.getParameter("sid").getBytes("UTF-8"));   
 	String name = new String(request.getParameter("sname").getBytes("UTF-8"));  
 	String age = new String(request.getParameter("sage").getBytes("UTF-8"));  
 	ConnectDB.update("insert into student (sid,sname,sage) values ('"+sid+"','"+name+"','"+age+"')");  
 	response.sendRedirect("list.jsp");
%>  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
<html>  
    <head>  
        <title>My JSP 'addinfo.jsp' starting page</title>  
    </head>  
    <body>  
        添加成功!<br>  
    </body>  
</html>  

    接着是delete.jsp

<%@ page language="java" import="com.example.ConnectDB" pageEncoding="gbk"%>  
<%  
	ConnectDB.update("delete from student where sid ="+request.getParameter("sid")); //获得要删除人的sid并删除  
 	response.sendRedirect("list.jsp");  //转到list.jsp页面  
%>  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
<html>  
    <head>  
        <title>My JSP 'delete.jsp' starting page</title>  
    </head>  
    <body>  
        This is my JSP page.<br>  
    </body>  
</html>

    基本上就这些了,更新的jsp就不写了。运行结果如下:



    通过这个例子基本上关于web的简单工程创建啊,修改数据库之类的都基本上可以去玩了,那么之后就可以搭建web和前段时间研究的仿微信的android app可以交互了。



阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页