目录
一.登陆
登陆界面代码:
登陆逻辑处理代码:
二.首页代码
三.新闻添加
增加界面的代码:
处理增加的代码:
数据库代码
前言:我已经和大家分享一些关于JavaWeb的简单知识,我会运用这些写一个新闻发布系统,代码 比较多,不会一次性发完,感兴趣的伙伴们可以点个关注,让我们一起期待这个系统的完善 吧ψ(`∇´)ψ。
朋友们要注意哦,我的项目里导入了其他的美化包所有我的界面时比较好看滴~( ̄▽ ̄)~*,但是根据我的代码写得话也不会报错的,就是会比较丑 。
如果家人们也想导入美化包,记得按图片操作
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
Document
<%@page import="oracle.jdbc.driver.OracleDriver"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.DriverManager"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
request.setCharacterEncoding("utf-8");
String yh=request.getParameter("yh");
String mm=request.getParameter("mm");
//加载驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//定义连接字符串
String url="jdbc:oracle:thin:@localhost:1521:orcl";
//获得连接
Connection con=DriverManager.getConnection(url,"scott","sa123");
//获得执行对象
PreparedStatement ps=con.prepareStatement("select * from t_user where user_name=? and user_pwd=?");
ps.setString(1, yh);
ps.setString(2, mm);
//获得结果集
ResultSet rs=ps.executeQuery();
//判断结果
if(rs.next()){
// localhost:8080/web04/news/index.jsp
request.getRequestDispatcher("/news/index.jsp").forward(request, response);
}else{
//重定向 客户端
/**
(localhost:8080/web04/)跳转的时候:
a.jsp 跳转到同级路径下的a.jsp (localhost:8080/web04/a.jsp)
../a.jsp 跳转到上一级路径下的a.jsp (localhost:8080/a.jsp)
/a.jsp 根目录的a.jsp (localhost:8080/a.jsp)
**/
response.sendRedirect("login.jsp");
}
//资源关闭
if(con!=null&&!con.isClosed()){
con.close();
}
if(ps!=null){
ps.close();
}
if(rs!=null){
rs.close();
}
%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
bootstrap
-
国家卫健委:昨日新增确诊病例29例,其中本土病例2例
xxx
110
110
2020/1/1 10:23:04
-
国家卫健委:昨日新增确诊病例29例,其中本土病例2例
xxx
110
110
2020/1/1 10:23:04
-
国家卫健委:昨日新增确诊病例29例,其中本土病例2例
xxx
110
110
2020/1/1 10:23:04
-
国家卫健委:昨日新增确诊病例29例,其中本土病例2例
xxx
110
110
2020/1/1 10:23:04
-
国家卫健委:昨日新增确诊病例29例,其中本土病例2例
xxx
110
110
2020/1/1 10:23:04
<%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
bootstrap
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%
request.setCharacterEncoding("utf-8");
//接受新闻的数据
String title=request.getParameter("title");
String author=request.getParameter("author");
String publisher=request.getParameter("publisher");
String topic=request.getParameter("topic");
String content=request.getParameter("content");
//新闻的添加(连接数据库)
//加载驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//定义连接字符串
String url="jdbc:oracle:thin:@localhost:1521:orcl";
//获得连接
Connection con=DriverManager.getConnection(url,"scott","sa123");
// 主键不能不填
// 主键没有自增的选项(触发器+序列)
//获得执行对象【数据插入之前,先把主键查询出来】
PreparedStatement ps=con.prepareStatement("select nvl(max(news_id),0) from t_news");
ResultSet rs=ps.executeQuery();
int id=0;
if(rs.next()){
id=rs.getInt(1);//查询出来的最大id
}
id++; //为什么加一 【避免主键的重复】
//插入新闻的操作
ps=con.prepareStatement("insert into t_news(news_id, news_title, news_topic, news_author, news_publisher, news_content) values(?,?,?,?,?,?)");
//赋值
ps.setInt(1, id);
ps.setString(2, title);
ps.setInt(3, Integer.parseInt(topic));
ps.setString(4, author);
ps.setString(5, publisher);
ps.setString(6, content);
//执行结果
int n=ps.executeUpdate();
if(n>0){
out.print("");
}else{
out.print("");
}
//资源的关闭
if(con!=null&&!con.isClosed()){
con.close();
}
if(ps!=null){
ps.close();
}
if(rs!=null){
rs.close();
}
%>
还有一个用户表我用的是写上一篇文章 时建的,这里我就不写了。
create table t_news(
news_id number primary key ,--新闻id
news_title varchar2(255) not null,--新闻标题
news_topic number not null,--新闻类别
news_author varchar2(255) not null,--新闻作者
news_publisher varchar2(255) not null,--新闻发布时间
news_content long not null--新闻内容
);
今天的就到这里了,下次见,拜拜(づ ̄3 ̄)づ╭❤~