JavaBean实操代码

Java分为2大类:

a.封装业务逻辑的JavaBean (LoginDao.java封装了登录逻辑) 逻辑

可以将jsp中的JDBC代码,封装到Login.java类中 (LoginDao.java)

package dao;
import java.sql.*;

import entity.Login;

public class LoginDao {
    public int login(Login login) {
        String URL = "jdbc:mysql://localhost:3306/mydatabase?serverTimezone=GMT%2B8";
        String USERNAME = "root";
        String PWD = "password";
        Connection connection = null;
        Statement stmt = null;
        ResultSet rs = null;
        {
            try {
                // a.导入驱动,加载具体的驱动类
                Class.forName("com.mysql.cj.jdbc.Driver");// 加载具体的驱动类
                // b.与数据库建立连接
                connection = DriverManager.getConnection(URL, USERNAME, PWD);
                // c.发送sql,执行(增删改、【查】)
                stmt = connection.createStatement();
                // String sql = "select stuno,stuname from student";

                String sql = "select count(*) from login where uname=‘" + login.getUname() + "‘ and upwd =‘" + login.getUpwd() + "‘ ";
                // String sql = "select * from student where stuname like ‘%"+name+"%‘";
                // 执行SQL(增删改executeUpdate(),查询executeQuery())
                rs = stmt.executeQuery(sql); // 返回值表示 增删改 几条数据
                // d.处理结果
                int count = -1;
                if (rs.next()) {
                    count = rs.getInt(1);
                }
//        if (count > 0) {
//            out.println("登陆成功!");
//        } else {
//            out.println("登陆失败!");
//        }
                return count;
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
                return -1;
            } catch (SQLException e) {
                e.printStackTrace();
                return -1;
            } catch (Exception e) {
                e.printStackTrace();
                return -1;
            } finally {
                try {
                    if (rs != null)
                        rs.close();
                    if (stmt != null)
                        stmt.close();// 对象.方法
                    if (connection != null)
                        connection.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }

        }
    }
}

b.封装数据的JavaBean (实体类,Student.java Person.java ) 数据

对应于数据库中的一张表

package entity;

public class Login {
    private int id;
    private String uname;
    private String upwd;

    public int getId() {
        return id;
    }

    public Login() {

    }

    public Login( String uname, String upwd) {

        this.uname = uname;
        this.upwd = upwd;
    }

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

    public String getUname() {
        return uname;
    }

    public void setUname(String uname) {
        this.uname = uname;
    }

    public String getUpwd() {
        return upwd;
    }

    public void setUpwd(String upwd) {
        this.upwd = upwd;
    }

}

Login login = new Login(uname,upwd) ;//即用Login对象 封装了2个数据(用户名 和密码)

封装数据的JavaBean 对应于数据库中的一张表 (Login(name,pwd))

封装业务逻辑的JavaBean 用于操作 一个封装数据的JavaBean

可以发现,JavaBean可以简化 代码(jsp->jsp+java)、提供代码复用(LoginDao.java)

原文地址:https://www.cnblogs.com/deepend/p/12260768.html

时间: 2024-10-19 09:52:40

JavaBean实操代码的相关文章

实操代码研究各种Java技术-java.toutiao.im

whatsmars https://github.com/javahongxi/whatsmars whatsmars-earth-web springmvc+velocitywhatsmars-earth-support-web earth工程的辅助工程whatmars-fs-web 用mongodb存储图片whatsmars-javase-example Java基础学习whatsmars-spring 研究springwhatsmars-tomcat 模拟tomcat实现whatsmars

DIV+CSS实操五:经管系网页内容模块内容添加(二)

继续接着DIV+CSS实操系列的博文添加代码:DIV+CSS实操一:经管系网页总体模块布局,DIV+CSS实操二: 经管系网页添加导航栏和友情链接栏,DIV+CSS实操三:经管系网页内容模块添加标题栏和版权信息模块和 DIV+CSS实操四:经管系网页内容模块内容添加(一).我们还是添加内容版块的内容,这一次是中间部分和右半部 分.由于中间的图片无缝滚动需要JS实现,我们后续加上. HTML代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Tr

DIV+CSS实操三:经管系网页内容模块添加标题栏和版权信息模块

我们继续接着DIV+CSS实操一:经管系网页总体模块布局和DIV+CSS实操二:经管系网页添加导航栏和友情链接 栏这个系列的博文做经管系网页.这一次我们所要做的就是给内容版块添加标题栏,还有就是给制作信息版块添加链 接.这一篇博文基本就是做这些了,记着和前两篇博文比较效果. 还是老套路,写HTML代码时,一定要注意闭合标签,一定要注意代码的整齐承担和完整性,先来HTML代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional

基于php+mysql的sql注入攻防实操

摘要: 基于php+mysql平台的sql注入攻防的实操,提供较详细的ubuntu平台上的操作步骤,方便练手. 使用的平台: Ubuntu 12.04,php 5.3.10, mysql Ver 14.14, Apache/2.2.22 步骤: 1. 在ubuntu上安装Apache,mysql,具体过程自行百度: 2.1 首先熟悉如何再mysql中建立数据表?包括用户名和对应的密码:并且熟悉其中的查询命令:完成查询测试: 2.2 完成php端的代码,完成php和mysql的链接:完成链接查询测

(二)Linux实操之——网络配置、进程管理、服务管理、组管理

接上段   (一)Linux实操之——权限.任务调度.磁盘分区 4.网络配置 4.1 NAT模式的网络配置 目前我们采用的网络配置是NAT模式. windows下cmd通过 ipconfig 命令可以得到本机的网络配置. linux下通过 ifconfig 可得到虚拟机的网络配置 在windows系统中运行着虚拟机中的linux系统,那么两个系统是怎么通信的呢? 实际上windows系统与本机的linux的通信是通过 VMnet8的虚拟网卡来进行的,两者形成网络,192.168.177.128

容器平台自动化CI/CD流水线实操

CI/CD----(实操说明) CI/CD 持续集成(Continuous Integration, CI):  代码合并,构建,部署,测试都在一起,不断地执行这个过程,并对结果反馈. 持续部署(Continuous Deployment, CD): 部署到测试环境.预生产环境.生成环境. 持续部署(Continuous Delivery, CD):  将最终产品发布到生成环境.给用户使用. Jenkins与容器技术CI/CD实战 说明:这张图稍微更形象一点,上线之前先把代码git到版本仓库,然

str int list tuple dict 一些实操

#字符串的 一些实操 a='what' b=' are ' c=' you ' print(a+b+c) #字符串拼接 m =a.split('+') #以什么分割 (代码a='w+ha+t' 输出['w', 'ha', 't'] ) print(m) s=' 8'.join(b) #拼接 print(type(s)) #查看数据类型 print(a.count('a')) #a 的数量 e='a looooooooooog word ' print(a*2) print(len(e)) #计算

Git简易实操教程

一.Git简介 1.分布式版本代码控制工具 2.多个开发人员协调工作 3.有效监听谁做出的修改 4.本地及远程操作 二.Git下载 Git下载地址:https://git-scm.com/downloads 检验git是否安装成功:在终端输入指令 git --version(查看git的版本) 三.Git的基本命令 git init:初始化本地仓库 git add <file>:添加文件到本地仓库 git status:查看文件状态 git commit:提交项目到本地仓库 git remot

QVM 实操记 - 18.12.28

视频回放地址:https://i.iamlj.com/mp4/QVM-IMC-12.27-1080P.mp4 目录 目录 常规开发部署流程 准备工作 开发准备 网站部署 操作步骤 重装系统 LANP环境安装 安装 WordPress Vhost配置[可选] FAQ 购买的主机怎么没 IP SSH 登录不上 端口 Ping 不通,通常是80或其他端口 其他业务方面的需求 密码怎么没了,登录 怎么重装系统啊,有没有 xx 最新的版本啊 重装系统,怎么还不进行啊,怎么需要开机? SSH 密钥是什么,怎