使用JSP、JavaBean和Servlet完成一个简单的留言板

本文介绍了一个使用JSP、JavaBean和Servlet开发的简单留言板系统,包括登录、注册、主题发布等功能。通过DbUtil、UserDaoImpl、UserService等组件实现数据操作,提供登录注册Servlet及主题相关Servlet。页面包括登录、注册、主题列表、详情及编辑功能。系统具有错误处理,如用户名不存在会自动跳转注册,密码不一致则提示重新输入。完成后的系统虽然页面设计简洁,但功能完整。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实现登录,注册,留言板

最近布置了一个实验,花了点时间写完了,本人小白,可以参考一下自己写,文章最后上运行截图

 需要的第一个数据库表列名有用来存放用户信息

第二个列名存放主题信息

上代码

DbUtil.java

package com.db;

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

public class DbUtil {
	private Statement getStatement()
	{
		Statement sm=null;
	    Connection conn;
		try {
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
			conn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=test", "sa", "123");
			sm=conn.createStatement();
			
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		return sm;
	}
	public ResultSet executeQuery(String sql)
	{
		ResultSet rs=null;
		
		try {
			rs=this.getStatement().executeQuery(sql);
		    System.out.println("取库成功");
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			
		}
		return rs;
	}
	public int executeNoQuery(String sql)
	{
		int result=0;
		
		try {
			result=this.getStatement().executeUpdate(sql);
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return result;
	}
}

UserDaoImpl.java              UserDao接口自己写一下很简单

package com.dao;

import java.sql.ResultSet;
import java.util.ArrayList;

import com.bean.Review;
import com.bean.Theme;
import com.bean.User;
import com.db.DbUtil;

public class UserDaoImpl implements UserDao {


	@Override
	public User getUserByUserNameandPassword(User user) {
		// TODO Auto-generated method stub
		DbUtil dbUtil=new DbUtil();
		String sql="select * from Userss where username='"+user.getUsername()+"' and password='"+user.getPassword()+"'";
		ResultSet rs=dbUtil.executeQuery(sql);
		try {
			if(rs.next())
			{
				return user;
			}
			
			}
			catch (Exception e) {

			}
		return null;
	}

	@Override
	public boolean insert(User user) {
		// TODO Auto-generated method stub
		DbUtil dbUtil=new DbUtil();
		String sql="insert into Userss values('"+user.getUsername()+"','"+user.getPassword()+"')";
		System.out.println(sql);
		
		int result=dbUtil.executeNoQuery(sql);
		
		return result==1?true:false;
	}

	@Override
	public ArrayList<Theme> getAllTheme() {
		// TODO Auto-generated method stub
		ArrayList<Theme> themes=new ArrayList<Theme>();
		
		
		DbUtil dbUtil=new DbUtil();
		String sql="select * from themess";
		System.out.println(sql);
		ResultSet rs=dbUtil.executeQuery(sql);
		try {
		while(rs.next())
		{
			Theme theme=new Theme();
			theme.setThemename(rs.getString("themename"));
			theme.setThemeuser(rs.getString("themeuser"));
			theme.setThemecontent(rs.getString("themecontent"));
			themes.add(theme);
		
		}
		}
		catch (Exception e) {

		}
		System.out.println("themes  dao size="+themes.size());

		return themes;
	}

	@Override
	public boolean insertTheme(Theme theme) {
		// TODO Auto-generated method stub
		DbUtil dbUtil=new DbUtil();
		String sql="insert into themess  values('"+theme.getThemename()+"','"+theme.getThemeuser()+"','"+theme.getThemecontent()+"'); create table "+theme.getThemename()+""+theme.getThemeuser()+"(users varchar(10),comment varchar(50))";
		System.out.println(sql);
		
		int result=dbUtil.executeNoQuery(sql);
		
		return result==1?true:false;
	}

	@Override
	public Theme getThemeNameByOthers(Theme theme) {
		// TODO Auto-generated method stub
		DbUtil dbUtil=new DbUtil();
		
		String sql="select * from themess where themename='"+theme.getThemename()+"'and themeuser='"+theme.getThemeuser()+"'";
		System.out.println(sql);
		ResultSet rs=dbUtil.executeQuery(sql);
		try {
			if(rs.next())
			{
				
				theme.setThemecontent(rs.getString("themecontent"));
				return theme;
			}
			
			}
			catch (Exception e) {

			}
		return theme;

	}

	@Override
	public boolean updateTheme(Theme theme) {
		// TODO Auto-generated method stub
		DbUtil dbUtil=new DbUtil();
		
		String sql="update themess set themecontent='"+theme.getThemecontent()+"' where themename='"+theme.getThemename()+"' and themeuser='"+theme.getThemeuser()+"'";
		System.out.println(sql);
		int result=dbUtil.executeNoQuery(sql);
		
		return result==1?true:false;
	}



	@Override
	public ArrayList<Review> getAllComment(String themename, String themeuser) {
		// TODO Auto-generated method stub
		ArrayList<Review> reviews=new ArrayList<Review>();
		
		
		DbUtil dbUtil=new DbUtil();
		String sql="select * from "+themename+""+themeuser+&#
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值