`

新闻发布系统-项目总结

阅读更多

从开始计划做新闻发布系统,到今天发布成功,断断续续的做了二十多天。毕竟是自己第一次使用VS2010做网页开发,在做系统的过程中,总会出现各种各样的错误,我们来回顾此次开发的整个路程。

整体介绍一下系统

新闻发布系统主要实现后台人员添加新闻,浏览者能够在前台浏览新闻并发表评论。总体上说这个系统还是非常简单的,对于初级网页开发者来说是非常适合,在开发的过程中不仅可以初步的学习网页开发的基本技巧,还是对网页开发学习的打下良好的基础。前台页面主要是使用div+Css对网页布局,后台采用三层架构并涉及到js、jquery和ajax技术,他们都是将来编写web程序的重要技术。

前台页面开发(div+css)

div+css是一种网页的布局方法,不同于传统的HTML网页设计语言中的table定位方式,可实现网页页面内容和表现相分离,我们将div+css分成介绍。

DIV

定义:

 

div(division/section)可以理解为区域或块,它是网页HTML的标签,我们在代码中使用div标签配合css类布局网页。它是一个块级元素,目的把内容分割为独立的、不同的部分。
用法:

用id或class来标记<div>,设计不同的样式。id和class两者主要区别是:id用于标识单独的、唯一的元素(与其他元素区分,设计不同样式),而class用于标识一类元素(设计相同的样式)。

CSS

CSS(Cascading Style Sheets)指层叠样式表,有效地对页面的布局、字体、颜色、背景和其它效果实现更加精确的控制,主要的目的使网页更加美观漂亮。

举例:

html代码:

    <!--最新新闻-->
    <div id="newnews" class="commonfrm"></div>
    <!--热点新闻--> 
    <div id="hotnews"class="commonfrm"></div>

css代码:

 

.commonfrm
{
   /*框架公共样式*/
   border:1px solid #DEDFDE;
   float:left;
   margin :5px;
   width :550px;
    }
#newnews
{
    /*最新新闻框架样式*/
    margin-left:10px;
    margin-bottom:10px;
    }
#hotnews
{
    /*热点新闻框架样式*/
    margin-left:10px;
    }

 

div和css布局的特点:

1、简化代码
使用div+css布局使代码很是精简,css文件可以在网站的任意一个页面进行调用,而若是使用table表格修改部分页面却是显得很麻烦。
2、访问速度
综合前一条,div+css简化了许多网页代码,提高了浏览访问速度,提高用户体验度。
3、浏览器不兼容
div+css相比table布局,更容易出现多种浏览器不兼容的问题,主要原因是不同的浏览器对web标准默认值不同。

CSS盒子模型:

盒子是用于可装东西的长方形、正方形的盒子。例如:鞋盒子等等。css盒子模型也是装东西的,比如文字、图片都可以装在盒子中。

 

盒子模型主要有五大属性:css高度(css height)、css宽度(css width)、css边框(css border)、css 边距(css margin)、填充(css padding),即可实现像盒子一样的长方形、正方形平面盒子。
假如我们说设置一个宽度为100px盒子:

        css样式代码:.yangshi{width:100px;}
        对应html代码:
        <div class="yangshi">内容</div>
        

 

这个时候我们可以将<div class="yangshi">内容</div>看作一个盒子。

后台代码编写

后台采用了三层架构并涉及到js、jquery和ajax技术,他们都是将来编写web程序的重要技术。在介绍这部分内容,我主要以代码为主,以修改新闻类别为例:

新闻类别界面:


代码:

 

$(function () { //相当于在页面中的body标签加上onload事件
    $(".caname").click(function () { //给页面中有caname类的标签加上click函数
        var objTD = $(this);
        var oldText = $.trim(objTD.text()); //保持老的类别名称
        var input = $("<input type='text' value='" + oldText + "' />"); //文本框的HTML代码
        objTD.html(input); //当前td的内容转为文本框
        //设置文本框的点击事件失效
        input.click(function () {
            return false;
        });
        //设置文本框的样式
        input.css("border-width", "0"); //边框的宽度为0
        input.height(objTD.height()); //文本框的高度为当前td单元格的高度
        input.width(objTD.width());  //文本框的宽度为当前td单元格的宽度
        input.css("font-size", "14px"); //文本框的文字大小
        input.css("text-align", "center");  //文本居中
        input.trigger("focus").trigger("select"); //全选

        //文本框失去焦点时重心变为文本
        input.blur(function () {
            var newText = $(this).val();
            var input_blur = $(this);

            //当老的类别名称与修改后的名称不同的时候才进行数据的提交操作
            if (oldText != newText) {
                //获取该类别名所对应的ID(序号)
                var caid = $.trim(objTD.prev().text());
                //AJAX异步更改数据库
                var url = "../handler/ChangeCaName.ashx?caname=" + encodeURI(encodeURI(newText)) + "&caid=" + caid + "&t=" + new Date().getTime();
                $.get(url, function (data) {
                    if (data == "false") {
                        $("#test").text("类别修改失败,请检查类别名是否重复!");
                        input_blur.trigger("focus").trigger("select"); //全选
                    }
                    else {
                        $("#test").text("");
                        objTD.html(newText);
                    }
                });
            }
            else {
                //前后文本一致,把文本框变成标签
                objTD.html(newText);
            }
        });


        //在文本框中按下键盘某键
        input.keydown(function (event) {
            var jianzhi = event.keyCode;
            var input_keydown = $(this);

            switch (jianzhi) {
                case 13: //按下回车键,把修改后的值提交到数据库
                    var newText = input_keydown.val();

                    //当老的类别名称与修改后的名称不同的时候才进行数据的提交操作
                    if (oldText != newText) {
                        //获取该类别名所对应的ID(序号)
                        var caid = $.trim(objTD.prev().text());
                        //AJAX异步更改数据库
                        var url = "../handler/ChangeCaName.ashx?caname=" + encodeURI(encodeURI(newText)) + "&caid=" + caid + "&t=" + new Date().getTime();
                        $.get(url, function (data) {
                            if (data == "false") {
                                $("#test").text("类别修改失败,请检查类别名是否重复!");
                                input_keydown.trigger("focus").trigger("select"); //全选
                            }
                            else {
                                $("#test").text("");
                                objTD.html(newText);
                            }
                        });
                    }
                    else {
                        //前后文本一致,把文本框变成标签
                        objTD.html(newText);
                    }

                    break;
                case 27:  //按下Exc键,取消修改,把文本框变成标签
                    $("#test").text("");
                    objTD.html(oldText);

                    break;
            }
        });
    });
});

//屏蔽Enter按键
$(document).keydown(function (event) {
    switch (event.keyCode) {
        case 13: return false;
    }
});

 

注意:一定要添加js文件的引用。

发布系统

发布ASP.NET的系统还是挺简单,上网查询发布的各种方法、步骤,照着做就行了。我主要采用的是IIS发布系统的方法。这个方法还是比较简单,推荐给大家一篇帖子:win8部署IIS系统并发布网站

 

分享到:
评论

相关推荐

    新闻发布系统-论文(43页)

    这篇论文主要探讨的是一个新闻发布系统的开发,包括其背景、需求分析、系统...总的来说,这篇论文深入探讨了新闻发布系统的设计与实现,涵盖了从需求分析到实际开发的全过程,为类似项目的开发提供了理论和实践指导。

    开源新闻发布系统

    总结,开源新闻发布系统为学习者提供了一个实际的Web开发项目,涵盖了前后端开发、数据库管理、安全实践等多个方面。通过研究和贡献这样的项目,新手能够快速积累经验,提高技能,并参与到全球的开源社区中去。

    新闻发布系统--mvc设计模式的最好的诠释

    在“新闻发布系统”这个项目中,我们可以深入理解MVC模式的工作原理及其优势。 **1. Model(模型)** 模型层是应用的核心,负责处理业务逻辑和数据管理。在这个新闻发布系统中,模型可能包括新闻类、类别类、用户...

    毕业设计论文-IT计算机-ASP毕业设计-新闻发布系统-源码.zip

    标题和描述中提到的“ASP毕业设计-新闻发布系统”是指一个基于ASP(Active Server Pages)技术的毕业设计项目,主要用于构建一个新闻发布平台。ASP是微软开发的一种服务器端脚本语言,常用于创建动态网页。这个项目...

    Java Web项目开发案例精粹14-新闻发布系统

    总结来说,这个“新闻发布系统”项目集成了Java、Java Web技术、MySQL数据库和一系列Web开发最佳实践,是初学者理解Web应用开发流程和核心技术的绝佳实例。通过深入研究这个项目,开发者可以提升自己的编程技能,...

    Spring Boot 2.1.0 新闻发布系统第八章 项目总结项目总结

    Spring Boot 2.1.0 新闻发布系统第八章 项目总结项目总结

    新闻发布系统课程报告

    总结,通过这个新闻发布系统的课程设计,学生不仅掌握了Java Web开发的基本技能,还锻炼了问题解决和团队协作的能力,为将来从事实际项目开发奠定了坚实基础。同时,不断反思和改进是持续提升技术水平的关键。

    新闻发布系统 jsp网页

    总结来说,这个【新闻发布系统 jsp网页】项目是一个基于JSP技术的后端系统,主要实现了新闻发布、分类管理、用户交互等功能,虽然前端设计简单,但核心功能完备。开发者可以参考此项目学习JSP编程、数据库操作以及...

    基于jsp的新闻发布系统的开题报告

    总结,基于JSP的新闻发布系统是信息时代的重要工具,其设计与实现需要兼顾功能性、安全性和用户体验。通过对国内外研究的深入理解,结合最新的技术趋势,我们可以构建出更高效、更安全、更人性化的新闻发布平台,为...

    使用JSP/Servlet/Ajax技术开发新闻发布系统

    总结,"使用JSP/Servlet/Ajax技术开发新闻发布系统"涉及到的技术栈广泛,包括前后端交互、数据库操作、MVC设计模式等多个方面,开发者需要掌握这些技能才能成功构建出高效、用户体验良好的新闻发布平台。

    jsp新闻发布系统后台相当好了

    【标题】:“jsp新闻发布系统后台相当好了” 【描述】:“jsp新闻发布系统后台 jsp后台相当好了” 在当前数字化时代,新闻信息发布系统是网站必备的功能之一,它允许管理员高效地管理、发布和更新新闻内容。这里...

    新闻发布系统课程设计

    【新闻发布系统课程设计】是一个基于Java Web技术的项目实践,主要使用了JSP(JavaServer Pages)和SQL数据库技术来构建一个完整的新闻信息发布平台。在这个系统中,用户可以浏览、发布和管理新闻,而开发者则需要...

    asp新闻发布系统代码

    根据给定文件的信息,我们...通过以上分析可以看出,这个新闻发布系统涵盖了基本的功能需求和技术实现细节,适合小型网站或项目的开发使用。对于进一步的功能扩展和性能优化,还可以考虑引入更多高级技术和最佳实践。

    新闻发布系统文档

    ### 新闻发布系统知识点概述 ...以上内容总结了新闻发布系统的整体架构、核心功能及其实现细节,以及在开发过程中需要注意的关键事项。这对于理解新闻发布系统的运作机制及其背后的技术实现具有重要的参考价值。

    新闻发布管理系统--实习报告.doc

    总结,新闻发布管理系统实习报告全面覆盖了软件开发生命周期的各个环节,从需求分析到详细设计,体现了实习生在项目实践中对软件工程理论的运用和技能的提升。这样的实习经验对于加深对IT行业的理解,尤其是系统开发...

    jsp源码新闻文章梦想年华JSP新闻发布系统1.0-jspnews

    ### jsp源码新闻文章梦想年华JSP新闻发布系统1.0-jspnews #### 系统概述 “jsp源码新闻文章梦想年华JSP新闻发布系统1.0-jspnews”是一款基于Java Server Pages(JSP)技术构建的内容管理系统(CMS),主要用于发布...

    新闻发布系统实例hyNewSql_51aspx

    【新闻发布系统实例hyNewSql_51aspx】是一个典型的Web应用程序示例,它专注于实现一个功能完善的新闻发布系统。这个实例对于学习和理解新闻发布系统的架构、数据库设计以及ASP.NET技术的应用具有很高的价值。 首先...

    ASP新闻发布系统源码ASP新闻发布系统源码

    总结,这个ASP新闻发布系统源码是一个涵盖了ASP基础、数据库交互、用户界面和安全性等多个方面的Web开发项目,对于学习和实践ASP编程以及理解Web应用程序的工作原理具有很高的价值。通过研究和分析这些源码,开发者...

    Spring Boot 2.1.0 新闻发布系统第八章 项目总结项目测试

    Spring Boot 2.1.0 新闻发布系统第八章 项目总结项目测试

Global site tag (gtag.js) - Google Analytics