任务形貌
本关任务:在之前的关卡中,我们乐成的注册了信息并登录了博客账号,如今我们需要实现发表博客的功能。
相关数据说明
MySQL 数据库 mydb;
用户表 t_user;
列名 类型 非空 注释
userId int √ 用户 ID 主键 自增
userName varchar √ 用户名
passWord varchar √ 用户密码
phone varchar √ 用户密码
博客表 t_blog;
列名 类型 非空 注释
blogId int √ 博客 ID 主键 自增
blogTitle varchar √ 博客标题
blogContent varchar √ 博客内容
userId varchar √ 创建人ID,也就是用户id
typeId varchar √ 类型ID,也就是博客类型
博客类型表 blog_type;
列名 类型 非空 注释
typeId int √ 类型ID 主键 自增
typeName varchar √ 类型名称
MySQL 连接设置:
Driver:com.mysql.jdbc.Driver;
URL:jdbc:mysql://localhost:3306/mydb?characterEncoding=UTF-8;
user:root;
password:123123。
编程要求
仔细阅读右侧编辑区内给出的代码框架及注释,在 Begin-End 中实现博客系统中发表博客的功能,详细要求如下:
在 com.pojo 包中有一个 Blog 类,该类有博客的属性和举动方法;
在 com.pojo 包中有一个 BlogType 类,该类有博客类型的属性和举动方法;
登录以后,实现菜单栏中创建博客的功能;
用户进入创建博客模块后,输出:“请输入你要创建的博客标题”、“请输入你要创建的博客内容”、“请输入你的博客类型”,然后获取键盘输入的信息,调用 BookTypeDao 类的 findBlogType(String blogType) 方法获取博客类型信息;
findBlogType(String blogType) 方法实现根据博客类型获取博客类型对象信息的功能,如果有该博客类型,则返回博客类型对象,如果不存在,则返回 null;
如果返回结果为 null,则输出“博客类型不存在!”;如果不为 null,将创建博客所需信息、用户对象和博客类型对象放入博客对象中,调用 BlogDao.addBlog(Blog blog) 方法判断博客是否创建乐成,如果返回 true,则输出:“博客创建乐成!”,否则输出:“博客创建失败”;
addBlog(Blog blog) 方法可以将博客信息插入用 t_blog 表中,如果创建乐成,则返回 true,否则返回 false。
测试说明
平台将使用测试集运行你编写的程序代码,若全部的运行结果正确,则通关。
可在右侧“测试结果”区查看详细的测试集详情。
测试输入:
1
sunfeng
123456789
1
Java简介
Java是一门面向对象编程语言,不但吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。
Java
5
3
预期输出:
**********接待进入博客系统**********
**********1. 登录**********
**********2. 注册**********
**********3. 退出系统**********
请输入你要进行的操作:
请输入你的用户名
请输入你的密码
1. 创建博客
2. 查看博客
3. 删除博客
4. 修改博客
5. 返回上一级菜单
请输入你要进行的操作:
请输入你要创建的博客标题
请输入你要创建的博客内容
Java是一门面向对象编程语言,不但吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。
请输入你的博客类型
博客创建乐成!
1. 创建博客
2. 查看博客
3. 删除博客
4. 修改博客
5. 返回上一级菜单
请输入你要进行的操作:
**********接待进入博客系统**********
**********1. 登录**********
**********2. 注册**********
**********3. 退出系统**********
请输入你要进行的操作:
退出系统!
step3/com/menu/Menu.java
step3/com/dao/BlogTypeDao.java
- package com.dao;
- import com.pojo.BlogType;
- import com.util.DBConnection;
- import java.sql.Connection;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- public class BlogTypeDao {
- static Connection conn = null; // 连接对象
- static PreparedStatement ps = null; // 预编译
- static ResultSet rs = null; // 结果集
- /**
- * 功能 查找博客类型是否存在
- * 参数 blogType
- * 返回值 博客类型对象
- */
- public BlogType findBlogType(String typeName) {
- // 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
- /********** Begin **********/
- BlogType blogType = new BlogType();
- // 判断博客类型是否存在
- try {
- conn = DBConnection.getConnection();
- String sql = "select * from blog_type where typeName = ?";
- ps = conn.prepareStatement(sql);
- ps.setString(1, typeName);
- rs = ps.executeQuery();
- // 如果存在,返回该博客类型对象信息
- if (rs.next()){
- blogType.setTypeId(rs.getInt("typeId"));
- blogType.setTypeName(rs.getString("typeName"));
- return blogType;
- }
- } catch (SQLException e) {
- e.printStackTrace();
- }
- // 不存在则返回 null
- return null;
- /********** End **********/
- }
- }
复制代码 step3/com/dao/BlogDao.java
- package com.dao;
- import com.pojo.Blog;
- import com.pojo.BlogType;
- import com.util.DBConnection;
- import java.sql.Connection;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- public class BlogDao {
- static Connection conn = null; // 连接对象
- static PreparedStatement ps = null; // 预编译
- static ResultSet rs = null; // 结果集
- public boolean addBlog(Blog blog) {
- // 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码
- /********** Begin **********/
- boolean result = false;
- // 插入博客数据到博客表中
- try {
- conn = DBConnection.getConnection();
- String sql = "insert into t_blog (blogTitle,blogContent,userId,typeId) values (?,?,?,?)";
- ps = conn.prepareStatement(sql);
- ps.setString(1, blog.getBlogTitle());
- ps.setString(2, blog.getBlogContent());
- ps.setInt(3, blog.getUser().getUserId());
- ps.setInt(4, blog.getBlogType().getTypeId());
- int i = ps.executeUpdate();
- // 判断是否添加成功
- if (i == 1) {
- result = true;
- }
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return result;
- }
- /********** End **********/
- }
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |