首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

个人博客留言的jsp代码

在Java Web开发中,JSP(JavaServer Pages)是一种用于创建动态网页的技术。下面是一个简单的个人博客留言功能的JSP代码示例:

1. 创建留言表单页面(leaveMessage.jsp

代码语言:txt
复制
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>留言板</title>
</head>
<body>
    <h1>欢迎来到我的博客,请留下您的足迹:</h1>
    <form action="submitMessage.jsp" method="post">
        姓名:<input type="text" name="name"><br><br>
        邮箱:<input type="email" name="email"><br><br>
        留言内容:<textarea name="message" rows="5" cols="40"></textarea><br><br>
        <input type="submit" value="提交留言">
    </form>
</body>
</html>

2. 处理留言提交的页面(submitMessage.jsp

代码语言:txt
复制
<%@ page import="java.sql.*" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>留言提交成功</title>
</head>
<body>
    <%
        String name = request.getParameter("name");
        String email = request.getParameter("email");
        String message = request.getParameter("message");

        // 数据库连接信息
        String url = "jdbc:mysql://localhost:3306/blogdb?useSSL=false&serverTimezone=UTC";
        String username = "root";
        String password = "your_password";

        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            Connection conn = DriverManager.getConnection(url, username, password);
            String sql = "INSERT INTO messages (name, email, message) VALUES (?, ?, ?)";
            PreparedStatement pstmt = conn.prepareStatement(sql);
            pstmt.setString(1, name);
            pstmt.setString(2, email);
            pstmt.setString(3, message);
            pstmt.executeUpdate();
            pstmt.close();
            conn.close();
    %>
            <h2>您的留言已成功提交!</h2>
            <p>姓名:<%= name %></p>
            <p>邮箱:<%= email %></p>
            <p>留言内容:<%= message %></p>
    <%
        } catch (Exception e) {
            e.printStackTrace();
    %>
            <h2>提交留言时发生错误,请稍后再试。</h2>
    <%
        }
    %>
    <a href="leaveMessage.jsp">返回留言板</a>
</body>
</html>

3. 数据库表结构(messages表)

代码语言:txt
复制
CREATE TABLE messages (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100),
    email VARCHAR(100),
    message TEXT,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

基础概念

  • JSP:JavaServer Pages,是一种服务器端技术,用于创建动态网页。
  • Servlet:Java Servlet是Java编写的服务器端程序,主要用于处理客户端请求并生成动态Web页面。

优势

  • 易于开发:JSP允许开发者将Java代码嵌入HTML中,简化了Web应用的开发过程。
  • 跨平台:基于Java技术,具有良好的跨平台性。
  • 可维护性:可以将业务逻辑与页面显示分离,便于维护和更新。

应用场景

  • 个人博客:如示例所示,用于接收和管理用户的留言。
  • 企业网站:用于展示动态内容和处理用户交互。
  • 电商平台:用于商品展示、订单处理等。

可能遇到的问题及解决方法

  1. 数据库连接失败
    • 确保数据库服务器正在运行。
    • 检查数据库URL、用户名和密码是否正确。
    • 确认JDBC驱动已正确添加到项目中。
  • SQL注入攻击
    • 使用PreparedStatement代替Statement来防止SQL注入。
    • 对用户输入进行严格的验证和过滤。
  • 页面显示异常
    • 检查JSP页面的语法和标签使用是否正确。
    • 确保所有引用的资源(如CSS、JS文件)路径正确。

通过以上步骤和注意事项,您可以实现一个基本的个人博客留言功能。希望这些信息对您有所帮助!

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

常见的个人博客系统

在上篇如何建立个人博客文章中,笔者简单介绍怎么去建立自己的个人博客,以及搭建一个博客流程是什么?...不管是个人博客还是企业博客,多有着相当大的使用量!为什么有这么多的用户喜欢它呢?...后台傻瓜式管理,主题,插件,都可以在可视化后台按键完成,就算你不懂任何一句代码,也能轻松安装使用。 缺点: 1.不能真正意义上实现静态化,只能实现伪静态。...强大插件功能 支持强大的插件扩展功能,随意选择实用的插件,让你的博客无限可能 自定义页面 轻松创建留言板、导航条、博主介绍等个性页面 足够小巧简单。...模板也多,就算不会程序代码,同样也也可以使博客做的很漂亮,是建立博客首选之一。

3.1K60
  • 升级全新的个人博客

    经过五一机器的连夜怒肝代码,把沪漂小窝更新升级后,又把我的个人博客连夜升级。...先看效果图,之前的版本是这样的 现在改版后成为这样的 做的还是比较常规的,像一个站点,另外资源分享栏目也做了优化,比之前的感官上更修改了一些内容。...并且更新了两部前端的学习资料,适合一定基础的人观看,如果是零经验,或者没有实际工作经验,可能看起来比较不知道说的啥。好比有些事情没有经历过说起来并不会懂。...下载链接: https://www.mlscoder.cn/ebooks/books-list/ 最后更重要的是集成了沪漂小窝的功能。...而且本站(主要是模板支持,花了99元开通了模板之家的会员)现在也支持手机端使用,比上一个版本更友好一些。 不过还是推荐PC端查看和下载相关资源。 我是马拉松程序员,可不止于代码

    35220

    不写代码,使用开源框架搭建个人博客

    观看此教程之前,你需要一个可以运行PHP代码的服务器环境。 方式1:你可以参考我们往期发布的《从源代码搭建LMAP环境》视频教程; 方式2:你也可以使用PHP集成环境或者使用Docker容器。...目前在互联网上有很多的个人博客网站,很多也是基于某一个开源框架搭建起来的,免去了自己一个人复杂的编码过程。对于爱好写博客的同学,我们可以使用开源代码来搭建自己的博客网站来记录自己的日常。...这里给大家演示如何使用typecho开源框架来搭建属于我们自己的网站。 框架优点:轻量级、简洁;如果你对原有框架不满意,完全可以进行二次开发 视频内容 超清视频可以参考bilibili空间:极客开发者

    35920

    个人博客网站背景视觉滚动特效代码

    之前一直注重模块的视觉滚动特效以至于忽略了图片背景的视觉差滚动特效,今天把小清新主题更新了图片背景视觉差特效,记录下代码,有喜欢的自己参考教程自己动手操作下。...这是在网络上找到的一款超级轻量级的jQuery视觉滚动特效代码,该插件使用CSS background-position属性和简单的js代码来完成页内滚动时的背景图片视觉差效果,效果演示可以前往 小清新主题...JS代码: 复制如下代码,放在js中即可或者直接放在网页的底部(记得添加代码), jQuery(window).bind('scroll', function () ...,然后修改对应的css即可,保存代码,刷新前台查看效果!...是不是非常简单,其实就是简单的两步,复制js代码修改class类的名称,然后在div框架添加data-paralasic属性就行了,大功告成,闪人。。。

    2K20

    个人博客网站背景视觉滚动特效代码

    之前一直注重模块的视觉滚动特效以至于忽略了图片背景的视觉差滚动特效,今天把小清新主题更新了图片背景视觉差特效,记录下代码,有喜欢的自己参考教程自己动手操作下。...这是在网络上找到的一款超级轻量级的jQuery视觉滚动特效代码,该插件使用CSS background-position属性和简单的js代码来完成页内滚动时的背景图片视觉差效果,效果演示可以前往 小清新主题...JS代码: 复制如下代码,放在js中即可或者直接放在网页的底部(记得添加代码), jQuery(window).bind('scroll', function () ...,然后修改对应的css即可,保存代码,刷新前台查看效果!...是不是非常简单,其实就是简单的两步,复制js代码修改class类的名称,然后在div框架添加data-paralasic属性就行了,大功告成,闪人。。。

    1.6K20

    三、登录页制作《iVX低代码无代码个人博客制作》

    一、登录页实现 本节需要做的登录页如下: 该页面我们复习可以的值,首先设置整个页面页面的垂直和水平对其为居中,随后一个容器包裹对应的登录区域,此时我们创建一个页面命名为登录注册页,并且设置水平和垂直对其为居中...: 接着我们创建一个行,命名为登录框,并且需要设置这个行的宽高为 500*300,水平方向对其为居中: 接着我们创建一个行,命名为标题,在内部创建一个文本,编写文本内容为登录,接着设置这个标题的的水平分享垂直居中...,高度为包裹,并且还可以设置一定的内边距: 接着再创建一个行命名为手机号验证,这个框用于存放手机号以及按钮,此时也需要设置这个框的水平方向的对齐为居中、高度为包裹: 接着在这个行内创建两个元素...此时由于其内部的每一个行的水平内容都是设置为居中,我们需要内部元素的宽度一致才能对其,在此验证码输入框的宽度要等于手机号码和发送按钮宽度的综合。...,这样是不好的。

    1.2K20

    Hexo搭建个人博客(三)—— Hexo博客的美化

    通过前两节的学习,我们已经搭建好自己的博客,就像盖房子一样要对内部进行装修,也就是对博客进行美化。 ---- 安装Hexo博客主题 Hexo博客可以安装不同的主题,这里我们只说最火的Next主题。...首先我们在自己电脑里的博客文件夹内(即username.github.io文件夹内)右键选择Git Bash here,在终端窗口内输入以下代码: $ git clone https://github.com...博客的配置 接下来我们对博客的配置主要将在两个_config.yml文件中进行。...,官方教程内已经讲得非常详细,关于多说评论的美化如显示系统与浏览器请参考loveNight的博客里面讲的也很详细,如果还是不懂请在下方评论留言。...参考资料 Hexo中文文档 Next文档 Hexo 3.1.1 静态博客搭建指南推荐 如何使用10个小时搭建出个人域名而又Geek的独立博客?

    3.4K90

    个人博客的搭建 - wuuconixs blog

    背景 目前我的博客是放在docker中,然后机器提供服务。但是如果只是在docker中进行修改,比如创建新文章,而在主机里没有备份的话,下次重开容器你的所有文章都会无。 以下是我的解决方法。...然后在新建容器的时候把文件绑定到仓库里的某个文件夹中。...因为我们一开始生成容器的时候已经绑定了文件夹,容器内部的变化会直接影响主机的变化,所以我们可以快乐的在主机里进行写文章。 而且这样相当于主机里有了虚拟机内部实时的文件。...然后写完某篇文章后再git push到github,妈妈再也不用担心我写的博文丢失了!...docker run -itd --name hexo-server -v /root/wuuconix-s-blog/blog:/root/blog -p 80:4000 hexo-server bash 博客地址

    27710

    四、博客详情页完成《iVX低代码仿CSDN个人博客制作》

    制作iVX 低代码项目需要进入在线IDE:https://editor.ivx.cn/ 一、博客详情页分析 博客详情页大体分为顶部标题、发布时间、作者信息、博文内容,底部的评论我们在此不必做悬浮内容...,因为这是个人博客并不涉及关注内容,接着下面是富文本内容,富文本我们需要使用富文本容器进行显示,在此处咱们使用富文本框进行代替,在之后的内容编写时在进行对应的赋值即可。...剩下的评论区并不着急,咱们先把对应的内容进行实现。...二、博客详情页标题及发布时间制作 首先咱们先制作博客详情页的标题和发布时间,此时先把顶部的头部栏复制过来,点击前台添加一个页面,命名为详情页: 接着复制整个首页中的主要内容行到详情页之中,因为大体布局一致...,在此我们只需要设置当前博文头部行的高度为包裹、背景色为透明即可: 由于头部标题本身上内边距是有一定距离的,在此设置这个行的上内边距以及距离顶部的一段距离,这样才可以使上部分像有一个隔断的颜色

    1.1K40

    跟踪博客留言回复的三种方法

    用户在博客上留言或者提问,显然是希望的得到回复的,但是如何知道自己的留言已经被回复了呢?不停的刷新页面吗,显然这不是最好的方法。...针对 WordPres 博客,我总结了下,有以下 3 种跟踪博客留言回复的方法。...当然 IE8 也是需要博客的支持,目前只有部分博客支持这一功能,显然我爱水煮鱼是其中的一个,我爱水煮鱼给博客制作了一个 留言回复的 Web Slice,你把鼠标移到留言区的每条留言,就会出现绿色的 Web...你该选择哪种方式让用户可以更好的跟踪博客留言回复呢?我个人最喜欢的还是 Comment Reply Notification,其他两个都是访客去设置,体验不是那么好。 那么你呢?...你有什么更好的跟踪博客留言回复的方法? ----

    31810

    基于JavaMysql的个人博客网站

    3年前写的一个技术博客。。。纪念一下。...OpenIdea Blog - 开源灵感博客 a personal blog site based on Java/Mysql - 基于Java/Mysql的个人博客网站;此时已经更新至version@...23.1;这是一个java web博客项目,尽最大可能实现mvc模式,没有使用到框架,实现了首页预览,文章发布,点赞,评论,Markdown格式编写,分类,标签,阅读排行,时间轴,管理员管理博客,访客记录等...introduction - 简介 博客用到的技术有:h5/css3/es6,jsp,servlet,mysql,bootstrap,ajax,json 其中jsp技术用到了jstl标签库,el表达式和标准动作等...然后找到src目录下的c3p0-config.xml文件填写唯一的mysql用户名和密码;(必须拥有读和写的权限) 4.

    2.1K20

    java基于ssm的个人博客系统个人博客网站个人博客项目源码

    简介 Java ssm开发的个人博客系统,可以发布博客,照片,站长留言。 演示视频 https://www.bilibili.com/video/BV1sf4y1y7Ne/?...share_source=copy_web&vd_source=ed0f04fbb713154db5cc611225d92156 技术 mysql,SSM,css,js,jq 功能 简单版(个人): 网站功能...:登录,上传照片,发布博客,首页,博客详情,注册,照片管理,博客管理,给站长留言,查看留言,分页,编辑博客,删除博客,删除照片,分页展示博客和照片,分页展示站长留言,修改登录密码。...增强版 角色 管理员+注册用户 添加功能:博文浏览量,博文评论,用户可以删除自己的评论,博主可以管理该博文以下的所有评论,搜索博文,博客首页展示用户头像,昵称,上传头像,修改基本信息,相册显示用户头像昵称...:分页,删除,根据留言内容查询; 退出 。

    2.1K00

    关于个人博客的优化

    作为一名懂前端的程序员,天天在嘴上谈样式,可是自己的个人博客网站却没有时间打理。就好像农民伯伯把最好的菜卖给别人,让自己的傻儿子却吃“长势不太好”的蔬菜,可农民伯伯其实是非常心疼自己的孩子的。...优势 功能齐全,基本可以满足个人博客的所有需求 运行在docker上,可以不关心操作系统的一些差异 数据库采用mongodb,更改数据库和表结构非常容易,而且向前兼容比较实现。...配置文件齐全,可以高度定制自己的专属博客 后台管理功能齐全,同时有统计功能 博客采用markdown编辑 那么,有啥缺点呢?...值得注意的是:不要把非目标替换文本匹配进去。 6.一键切换网页模板 重构代码最最重要的原则就是随时可以终止。所以,一般我们在重构代码的时候,会设置一个开关,以便切换为原来的版本。...,但是呢,博客在移动端显示时,却出现按钮无法显示的问题,只要原因是移动端滚动层不再是全局。

    2.4K10

    二、博客首页完成《iVX低代码仿CSDN个人博客制作》

    制作iVX 低代码项目需要进入在线IDE:https://editor.ivx.cn/ 一、菜单思路参考及制作 在 CSDN 首页中的菜单部分为一串横排的内容,并且可以进行拖动: 首先咱们添加一个行...,命名为菜单: 接着肯定是需要设置上下的内边距内容: 接着直接往这个行中添加文本内容即可: 很明显,当前文本字号与我们所需要的效果差距比较大,设置对应的字号使其大小(13号字体...此时只需要设置包裹这些文本的行取消换行即可,点击菜单行,在属性中把自动换行关闭即可: 接着还需要设置当前这一行的剪切属性,剪切属性可以使当前这一行的内容可以滑动,但是会出现滚动条,咱们还需要将滚动条隐藏...,此时需要设置这个轮播容器的高度为 100%: 接着给这两个轮播页添加对应的对应的背景图片: 此时页面效果如下: 那如何增加对应的文本呢?...其实咱们的行有很多作用,例如在行中设置内容后,设置上的上外边距为负,那么此时就可以往上移动,这样就可以覆盖在这个轮播容器之上了,但是文本却不能进行轮播,这种方法需要额外的制作很多的事情,例如你要设置动画

    1.4K30

    三、博客首页完成《iVX低代码仿CSDN个人博客制作》

    制作iVX 低代码项目需要进入在线IDE:https://editor.ivx.cn/ 一、首页内容分析 此时我们分析一下首页内容: 通过以上内容可以得知,这些内容都统一包含在一个块之内,这个块之内包含了多个内容...其实你可以统一在这里设置内边距,但是我选择在内容中设置内容,这样我可以更清楚的看见这些内容适应于内边距的样子,又或者根本不用设置内边距。...: 可是此时内容如果很多,就会发现有很多行,这样并不例如我们有一个整齐的排版,所以咱们此时需要限制当前文本的显示行数,此时在这个文本的属性中找到最大行数,设置为 2 即可: 此时记得发现显示多余内容时将会以省略号进行省略...接着我们添加一个行,命名为信息: 接着调整对应的高度和背景色: 此时我们还需要设置一个很重要的属性,那就宽度,否则这个部分的内容将会左对齐显示,此时设置宽度小于父容器宽度后,由于父容器的水平对齐设置将会使整个行居中显示...: 方法有很多,主要是看大家选择的方法。

    96820

    简单的个人博客网站设计 静态HTML个人博客主页 DW个人网站模板下载 大学生简单个人网页作品代码 个人网页制作 学生个人网页设计作业

    ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 作者主页: 【主页——获取更多优质源码】 web前端期末大作业: 【毕设项目精品实战案例 (1000套) 】 程序员有趣的告白方式...120G干货分享】 关于作者: 历任研发工程师,技术组长,教学总监;曾于2016年、2020年两度荣获CSDN年度十大博客之星。...一、‍网站题目 个人网页设计、‍♂️个人简历制作、‍简单静态HTML个人网页作品、‍个人介绍网站模板 、等网站的设计与制作。... 二、✍️网站描述 ⭐个人网页设计网站模板采用DIV CSS布局制作,网页作品有多个页面,如 :个人介绍(文字页面)、我的作品(图片列表)、个人技能(图文页面)、在线留言(表单页面)CSS样式方面网页整体采用左右布局结构...网站程序方面:计划采用最新的网页编程语言HTML5+CSS3+JS程序语言完成网站的功能设计。并确保网站代码兼容目前市面上所有的主流浏览器,已达到打开后就能即时看到网站的效果。

    1.3K40

    一、博客首页搭建搭建《iVX低代码仿CSDN个人博客制作》

    制作iVX 低代码项目需要进入在线IDE:https://editor.ivx.cn/ 一、头部导航栏思路参考 首先我们可以查看CSDN的博客首页,从中查看一下布局: 在以上首页中,我们可以得知其顶部为一个整行...,这个行内容左侧为一个logo,logo右侧为一个输入框,这个输入框输入文本后可以搜索对应的内容,在CSDN中搜索框可以搜索出用户名、下载等内容,在我们只做博客时使个人博客,咱们并不做过多的搜索,在功能设计时咱们只需要搜索出对应的博客内容即可...‘#e7e9ee’: 随后设置往头部之中添加两个行,一个命名为左一个命名为右: 左右两行的高度都设置为包裹,并且背景色透明、宽度都为 50%,他们的高度给他们自己的元素决定就好:...: 最后更改一下搜索框的提示文本即可解决: 接下来制作右行的内容,此时设置右行的水平对齐为靠右,这样行内的内容就会往右靠齐: 接着往这个行中添加一个图片,设置宽高为 30px...: 接着再设置一下圆角就可以了: 但此时还是跟CSDN 的头部有一点区别,总感觉csdn 的头部内容有一点阴影,那我们只需要设置当前行的阴影即可,找到整个头部行,设置阴影偏Y为3,

    1.5K20
    领券