哈喽啊各位今天分享的是jvavaweb(javaBEan封装与application)近期疫情还没变好大家记得出门记得戴口罩哟
好了开始进入主题了
一、application
<%@ 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>Insert title here</title>
</head>
<body>
<%
//application的作用域:在服务器的打开和关闭之间有效
//应该先拿值
Integer count=(Integer)application.getAttribute("count");
if(count!=null){//拿到了 说明以前有人访问过
count++;//在原来的访问量上递增1
}
else{
count=1;
}
application.setAttribute("count", count);//存值 键,值
%>
您是第<%=application.getAttribute("count") %>位访问该网站的用户.
</body>
</html>
二、javabean封装
1、JavaBean的优势 :
解决代码重复编写;减少代码冗余 功能区分明确;避免业务逻辑处理与页面显示处理集中在一起造成混乱; 提高了代码的维护性。
2、JavaBean的分类:
2.1封装数据
按照OO原则,属性与数据库表字段相对应;
属性私有 ;
具有public的set/get方法 。
2.2封装业务
具有实现特定功能的方法和方法实现 ;
通常与一个封装数据的JavaBean对应。
dao方法:
package com.ruojuan.Dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import com.ruojuan.entity.News;
import com.ruojuan.util.DBHelper;
/**
* 新闻的增删改查
* @author
*
* 2022年4月5日下午5:39:06
*/
public class NewsDao {
//扩大作用域
//三兄弟
private Connection con = null;
private PreparedStatement ps = null;
private ResultSet rs = null;
/**
* 查询新闻的id 标题,作者
* @return 新闻的集合
*
*/
public List<News> getAll(){
List<News> ls=new ArrayList<News>();
try {
//创建连接
con=DBHelper.getCon();
//定义sql语句
String sql="select nid,ntitle,nauthor from news280 order by nid desc";
//获得执行对象
ps=con.prepareStatement(sql);
//获得结果集
rs=ps.executeQuery();
//循环遍历
while(rs.next()){
//实例化新闻对象
News n=new News();
//给对象赋值
n.setNid(rs.getInt(1));
n.setNtitle(rs.getString(2));
n.setNauthor(rs.getString(3));
//加到集合中
ls.add(n);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
DBHelper.myClose(con, ps, rs);
}
return ls;
}
//增加新闻
public int addNew(News ns) {
int n = 0;
try {
con = DBHelper.getCon();
String sql="select nvl(max(nid),0) from tb_news";
//out.print(sql);
//获得执行对象
ps=con.prepareStatement(sql);
//获得结果集
rs=ps.executeQuery();
//扩大作用域
int nid = 0;
//判断
if(rs.next()){
//最大序号+1
nid = rs.getInt(1)+1;
}
//实现增加=插入操作
sql = "insert into tb_news(nid,tid,ntitle,nauthor,nsummary,ncontent,naddtime) values(?,?,?,?,?,?,?)";
//执行sql语句
ps = con.prepareStatement(sql);
//给占位符赋值
ps.setInt(1, ns.getNid());
ps.setInt(2, ns.getTid());
ps.setString(3,ns.getNtitle());
ps.setString(4, ns.getNauthor());
ps.setString(5, ns.getNsummary());
ps.setString(6, ns.getNcontent());
ps.setString(7, ns.getNaddtime());
//获得影响行数
n = ps.executeUpdate();
}catch(Exception e){
e.printStackTrace();
}finally {
DBHelper.myClose(con, ps, null);
}
return n;
}
//删除新闻
public int deleteNew(int nid) {
int n = 0;
try {
con = DBHelper.getCon();
String sql="delete from tb_news where nid="+nid;
//获得执行对象
ps=con.prepareStatement(sql);
//给占位符赋值
ps.setInt(1, nid);
//开始执行
n=ps.executeUpdate();//影响行数
} catch (Exception e) {
// TODO: handle exception
}finally {
DBHelper.myClose(con, ps, null);
}
return n;
}
//修改新闻
public int updateNew(News ns,int nid) {
int n = 0;
try {
con = DBHelper.getCon();
String sql="update tb_news set tid=?,ntitle=?,nauthor=?,nsummary=?,ncontent=?,naddtime=? where nid=?";
ps=con.prepareStatement(sql);
//给占位符赋值
ps.setInt(1, ns.getTid());
ps.setString(2, ns.getNtitle());
ps.setString(3, ns.getNauthor());
ps.setString(4, ns.getNsummary());
ps.setString(5, ns.getNcontent());
ps.setString(6, ns.getNaddtime());
ps.setInt(7, nid);
//获得影响行数
n = ps.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
} finally {
DBHelper.myClose(con, ps, null);
}
return n;
}
}
好了本次的分享就到这里了疫情期间出门记得戴口罩哟 好了886