Eclipse搭建服务器

首先新建一个项目:(这种情况下可能没有新建工程,将

                )在新建一个工程:

然后记得装Tomcat:






然后右键这个jar包,进行Build path:



接下来就是代码了,但是你首先得有个数据库,我用的是mysql,下载一个mysql软件,创建好数据库及表后:、

在Eclipse中新建一个类:(用来连接数据库)

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class MysqlUtils {
    // 加载数据库驱动com.mysql.jdbc.Driver
    private static String dbdriver = "com.mysql.jdbc.Driver";
    // 获取mysql连接地址
    private static String dburl = "jdbc:mysql://127.0.0.1:3306/beautiful_girl?serverTimezone=GMT%2B8&useSSL=false";
    // 数据名称
    private static String username = "root";
    // 数据库密码
    private static String userpassword = "new password";
    // 获取一个数据的连接
    public static Connection conn = null;
    //数据库查询语句
    String sql = "select * from Picture";
    
    //连接数据库
    public Connection connect() {
    	Connection conn = null;
        try {
            Class.forName(dbdriver);            
            conn = DriverManager.getConnection(dburl, username, userpassword);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return conn;

    }
    
    //断开数据库
    public void disconnect(ResultSet rs, PreparedStatement ps,
            Connection conn) {
    	if (rs != null) {
            try {
                rs.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if (ps != null) {
            try {
                ps.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if (conn == null)
            return;
        try {
            conn.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }

    }
}                                                                                                                                  

然后新建一个类,用来写Bean类,保存数据库查询的字段:

public class Bean {
	private int id;
	private String imgUrl;
	
	public Bean(int id,String imgUrl) {
		this.id = id;
		this.imgUrl = imgUrl;
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getImgUrl() {
		return imgUrl;
	}

	public void setImgUrl(String imgUrl) {
		this.imgUrl = imgUrl;
	}
}	

接下来就是主方法里的代码块了:

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.ArrayList;

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 com.google.gson.Gson;

/**
 * Servlet implementation class Test
 */
@WebServlet("/Test")
public class Test extends HttpServlet {
	private ArrayList<Bean> list = new ArrayList<Bean>();
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Test() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		response.setContentType("text/json; charset=utf-8");
		
		PreparedStatement content = null;
		Connection con = null;
		ResultSet result = null;
		String json = null;
		String page = "1";
		
		
		//获取操作网页对象
		PrintWriter out = response.getWriter();
		//“page”是浏览器要传输到后台的参数
		page = request.getParameter("page");
		
		MysqlUtils mysql = new MysqlUtils();
		//获取数据库操作对象
		con = mysql.connect();
		
		try {
			//判断前台传输的数据是否为空
			if(page!=null) {
				//每次查十条
				content = con.prepareStatement("select * from Picture limit "+(Integer.parseInt(page) - 1)*10+",10");
				result = content.executeQuery();
				ResultSetMetaData meta = result.getMetaData();
				int coliumn = meta.getColumnCount();
				//判断查找的数据是否有下一条
				while(result.next()) {
					list.add(new Bean(result.getInt("id"),result.getString("imgUrl")));
					Gson gson  = new Gson();
					json = gson.toJson(list);
				}
				out.println(json);
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally {
			//将集合中的原始数据清空
			list.clear();
		}
		
//		response.getWriter().append("Served at: ").append(request.getContextPath());
		
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}

当我们代码写完后,就可以在浏览器上看我们生成的json串了

猜你喜欢

转载自blog.csdn.net/Dealpoor/article/details/80666657