精华内容
下载资源
问答
  • java里用Servlet实现登陆注册不带界面设计的功能。 我在web.xml文件中已经配置好浏览器地址,也弄好了数据库连接以及创建列表、封装列表等内容。 注册的添加数据方法用jdbc的添加也已实现。 现在问题是当登录时在...
  • Winter仿狂神社区,第一小块注册登陆,使用邮箱. 运行成果 本人练手项目,条件不充足,如微信验证需要公司注册什么的,只能进行一些改造,这个初稿,后续会一直更新, 数据库的搭建 这里的 gmt_create 没有使用datatiem...

    Winter仿狂神社区,第一小块注册登陆,使用邮箱.

    运行成果



    本人练手项目,条件不充足,如微信验证需要公司注册什么的,只能进行一些改造,这个初稿,后续会一直更新,

    数据库的搭建

    这里的 gmt_create 没有使用datatiem是因为 使用不熟练导致 datatime无法被识别

    .后续修复了,这个还有一个就是需要加上头像的连接,涉及oss的存储,就先不做了

    创建springboot项目 ,导入基本lombok,web ,mysql,后续慢慢加

    接下来就是mybatis_plus生成代码和基本使用

    详情https://www.kuangstudy.com/bbs/1384167725835755522

    这里不做追述.

    统一异样处理和按需返回结果集,跨域问题

    结果集

    package com.cjg.winter.common;
    import lombok.Data;
    import java.util.HashMap;
    import java.util.Map;
    
    @Data
    public class R {
        private  Integer code;
        private  String message;
        private Map<String,Object> data=new HashMap<>();
    
        //防止外部直接调用
         private  R(){}
    
        /**
         * 返回成功的结果
         * @return
         */
         public static R ok(){
             R r=new R();
             r.setCode(ResponseEnum.SUCCESS.getCode());
             r.setMessage(ResponseEnum.SUCCESS.getMessage());
             return  r;
         }
        /**
         * 返回是被的结果
         * @return
         */
        public static R error(){
            R r=new R();
            r.setCode(ResponseEnum.ERROR.getCode());
            r.setMessage(ResponseEnum.ERROR.getMessage());
            return  r;
        }
        /**
         * 返回特定的结果
         * @return
         */
        public static R setResult(ResponseEnum result){
            R r =new R();
            r.setCode(result.getCode());
            r.setMessage(result.getMessage());
            return  r;
        }
    
        /**
         * 给data赋值, 直接全都返回 R 是因为能够链式编程
         * @return
         */
        public R put(String key ,Object value){
            this.data.put(key,value);
            return  this;
        }
    
    
    }
    

    异常处理

    package com.cjg.winter.handler;
    
    import com.cjg.winter.common.R;
    
    
    import lombok.extern.slf4j.Slf4j;
    import org.springframework.web.bind.annotation.ExceptionHandler;
    import org.springframework.web.bind.annotation.RestControllerAdvice;
    @Slf4j
    @RestControllerAdvice
    public class UnionExceptionHandler {
    
       @ExceptionHandler(value = Exception.class)
        public R handlerException(Exception e){
          log.error(e.getMessage(),e);
          return R.error();
    
        }
    }
    

    跨域问题

    package com.cjg.winter.config;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.web.servlet.config.annotation.CorsRegistry;
    import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
    
    @Configuration
    public class CorsFilter implements WebMvcConfigurer {
    
            @Override
            public void addCorsMappings(CorsRegistry registry) {
                registry.addMapping("/**")
                        .allowedOriginPatterns("*")
                        .allowedMethods("GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS")
                        .allowCredentials(true)
                        .maxAge(3600)
                        .allowedHeaders("*");
            }
    
    }
    

    发送信息

    导入依赖

    <!-- 工具包 时间/随机数/雪花算法/验证码  https://mvnrepository.com/artifact/cn.hutool/hutool-all -->
    <dependency>
        <groupId>cn.hutool</groupId>
        <artifactId>hutool-all</artifactId>
        <version>5.6.5</version>
    </dependency>
    
    <!-- springboot 继承email https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-mail -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-mail</artifactId>
        <version>2.4.5</version>
    </dependency>
    

    配置yml

    spring:
      datasource:
        username: root
        password: root
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://0000:3306/winter?useUnicode=true&useSSL=false&characterEncoding=utf8
    
      mail:
        protocol: smtp #邮件协议
        host: smtp.163.com #smtp服务器地址
        port: 25 #默认25
        username: c990@163.com #发件人的邮箱地址
        password: H0000000W #授权码
        default-encoding: utf-8
        properties:
          mail:
            debug: true #完整打印发送过程的日志
    

    使用测试

    package com.cjg.winter.service.impl;
    
    import cn.hutool.core.util.RandomUtil;
    import com.cjg.winter.entity.Admin;
    import com.cjg.winter.mapper.AdminMapper;
    import com.cjg.winter.service.AdminService;
    import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
    import org.springframework.mail.javamail.JavaMailSender;
    import org.springframework.mail.javamail.MimeMessageHelper;
    import org.springframework.stereotype.Service;
    
    import javax.annotation.Resource;
    import javax.mail.MessagingException;
    import javax.mail.internet.MimeMessage;
    import java.util.HashMap;
    import java.util.Map;
    
    /**
     * <p>
     *  服务实现类
     * </p>
     *
     * @author 老饼干
     * @since 2021-04-25
     */
    @Service
    public class AdminServiceImpl extends ServiceImpl<AdminMapper, Admin> implements AdminService {
    
        @Resource
        private JavaMailSender javaMailSender;
    //    @Resource
    //    private TemplateEngine templateEngine;
    
        @Override
        public Map< Integer,String> senMail(String email) {
            String mailUsername="<c995794390@163.com>";
            String s=null;
            Integer key =0;
            // 创建邮件对象
            MimeMessage mimeMessage = javaMailSender.createMimeMessage();
            try {
                MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
                // ;邮件主主题(可以多个);接收人;抄送人;隐秘抄送人;发送日期;上下文环境;邮件发送
                helper.setSubject("Winter,邮箱验证");
                helper.setFrom(mailUsername);
                helper.setTo(email);
    //            IdUtil.
                 s = RandomUtil.randomString(6);
                helper.setReplyTo(mailUsername);
                helper.setText("Winter社区确认:"+s);
                // 抄送人其实就相当于你同时发送给两个人。
    
            } catch (MessagingException e) {
                e.printStackTrace();
            }
            javaMailSender.send(mimeMessage);
            HashMap< Integer,String> map = new HashMap<>();
            map.put(key,s);
            key++;
            return map;
    
        }
    }
    

    Controller层调用

    @Autowired
    AdminMapper adminMapper;
    @Autowired
    AdminService adminService;
    
    @PostMapping("/sendMail")
    R mail(@RequestBody() email email) {
    
        QueryWrapper<Admin> wrapper = new QueryWrapper<>();
        wrapper.eq("email", email.getEmail());
        Admin admin1 = adminMapper.selectOne(wrapper);
    
        if (admin1 == null) {
    
            Map<Integer, String> map = adminService.senMail(email.getEmail());
            String s = map.get(key);
            Admin admin = new Admin();
            admin.setEmail(email.getEmail());
            admin.setConfirmCode(s);
            admin.setActivationTime(LocalDateTime.now().plusMinutes(10));
            adminMapper.insert(admin);
        } else {
            return R.setResult(ResponseEnum.ERROR10002);
        }
        return R.ok();
    }
    

    邮件发送超过十分钟就是失去效果

    @PostMapping("/insert1")
    R add1(@RequestBody Admin admin) {
        System.out.println("===============================================");
        System.out.println(admin);
        QueryWrapper<Admin> wrapper = new QueryWrapper<>();
        wrapper.eq("confirm_code", admin.getConfirmCode());
        //根据 确认码查询,用户
        Admin admin1 = adminMapper.selectOne(wrapper);
        Duration between = Duration.between(LocalDateTime.now(), admin1.getActivationTime());
        long l = between.toMinutes();
        //判断 确认码的失效
        if (l >= -10) {
            //插入用户名密码创建
            admin1.setName(admin.getName());
            admin1.setPassword(admin.getPassword());
            adminMapper.updateById(admin1);
            return R.ok();
        }
        return R.error();
    
    }
    

    这个建议先使用 junit测试不够就用 postman

    前端 vue+element

    cmd 使用vue ui 快速创建 勾选router vuex label 装插件 element-ui axios

    登录页

    <template>
      <el-container class="b_container">
        <el-header class="main">
          <el-button type="warning" size="mini" round>阿巴</el-button>
          <el-button type="warning" size="mini" round>狗叫</el-button>
          <el-button type="warning" size="mini" round>大雨</el-button>
          <el-button @click="dialogVisible = true" style="margin-left: 800px" type="warning" size="mini">登陆/注册</el-button>
          <el-dialog
              title=""
              :visible.sync="dialogVisible"
              width="30%"
              :before-close="handleClose"
          >
            <el-button type="text" @click="dialogVisible1 = true ; dialogVisible=false">点击注册</el-button>
            <el-dialog
                :append-to-body="true"
                title=""
                :visible.sync="dialogVisible1"
                width="30%"
                :before-close="handleClose">
    
              <el-form label-position="left" :model="ruleForm" status-icon :rules="rules" ref="ruleForm" label-width="0"
                       class="demo-ruleForm">
                <el-form-item label="" prop="name">
                <el-input class="input1" placeholder="输入称昵" type="text" v-model="ruleForm.name"></el-input>
                </el-form-item>
                <el-form-item label="" prop="email">
                  <el-input class="input2" placeholder="输入邮箱" type="text" v-model="ruleForm.email"></el-input>&nbsp;&nbsp;
                   <el-button  type="primary"  @click="send" :disabled="min!=60"  >{ {min==60?'&nbsp;发送邮件':"剩余"+min} }</el-button>
                </el-form-item>
                  <el-form-item label="" prop="confirmCode">
                  <el-input class="input1" placeholder="输入验证码"  type="text" v-model="ruleForm.confirmCode" autocomplete="off"></el-input>
                </el-form-item>
                <el-form-item label="" prop="password">
                  <el-input class="input1" placeholder="输入密码"  type="password" v-model="ruleForm.password" autocomplete="off"></el-input>
                </el-form-item>
                <el-form-item label="" prop="repassword">
                  <el-input class="input1" placeholder="确认密码" type="password" v-model="ruleForm.repassword" autocomplete="off"></el-input>
                </el-form-item>
                <div class="button">
                  <el-button type="primary" @click="submitForm('ruleForm')">注册</el-button>
                  <el-button @click="resetForm('ruleForm')">重置</el-button>
                       
                </div>
              </el-form>
            </el-dialog>
    
    
            <el-form  :model="loginForm" status-icon ref="loginForm" label-width="0"
                     class="demo-ruleForm">
              
              <el-form-item  prop="email">
                <el-input class="input" placeholder="输入邮箱" type="text" v-model="loginForm.email"></el-input>
              </el-form-item>
              <el-form-item  prop="password">
                <el-input class="input" placeholder="输入密码" type="password" v-model="loginForm.password" autocomplete="off"></el-input>
              </el-form-item>
        
                <div class="button">
                        <el-button type="primary" @click="login('loginForm')">登陆</el-button>
                        <el-button @click="resetForm('loginForm')">重置</el-button>          
                </div>
              
            </el-form>
            <span slot="footer" class="dialog-footer">
    
      </span>
          </el-dialog>
        </el-header>
    
    
        <el-main class="main">
          <p class="product-desc">为每个想知道八卦的人提供一个少走弯路的平台</p>
          <p class="product-desc_C">我们缺乏的不是知识,而是学而不厌的态度</p>
        </el-main>
        <el-footer class="main">
          <a href="">关于我们</a> | <a href="">加入我们</a> | <a href="">联系我们</a> | <a href="">获取帮助</a>
          <br>
          <span> Copyright @ B321</span> <a href="">粤ICP备 - 20200423号 </a>
        </el-footer>
      </el-container>
    </template>
    
    <script>
    export default {
      data() {
        var checkname = (rule, value, callback) => {
          if (!value) {
            return callback(new Error('昵称不能为空'));
          }
          setTimeout(() => {
            callback();
          }, 1000);
    
        };
        var validatePass = (rule, value, callback) => {
          if (value === '') {
            callback(new Error('请输入密码1'));
          } else {
            if (this.ruleForm.repassword !== '') {
              this.$refs.ruleForm.validateField('repassword');
            }
            callback();
          }
        };
        var validatePass2 = (rule, value, callback) => {
          if (value === '') {
            callback(new Error('请再次输入密码2'));
          } else if (value !== this.ruleForm.password) {
            callback(new Error('两次输入密码不一致!'));
          } else {
            callback();
    
          }
        };
        return {
          src: "http://localhost:9999/review",
          dialogVisible: false,
          dialogVisible1: false,
          min:60,
          test:'',
          test1:'',
          ruleForm: {
            email:'',
            name: '',
            password: '',
            repassword: '',
            confirmCode:''
          },
          loginForm:{
            code:'',
            name:'',
            password:'',
            email: '',
            
          },
          rules: {
            password: [
              {validator: validatePass, trigger: 'blur'}
            ],
            repassword: [
              {validator: validatePass2, trigger: 'blur'}
            ],
            name: [
              {validator: checkname, trigger: 'blur'}
            ]
          }
    
        };
      },
      methods: {
        send(){
        this.test= setInterval(() => {
          this.min--;
            if(this.min<=0){
              clearInterval(this.test)
              this.min=60
            }
        }, 1000);
        const data={
          "email":this.ruleForm.email
        }
        console.log(data);
        axios.post("http://localhost:9999/winter/admin/sendMail",data).then(resp=>{
          if(resp.data.code===0){
               this.$message({
               message: resp.data.message,
               type: 'success'
              });
          }
           else{
                  this.$message.error(resp.data.message);
                  this.test1=setTimeout((
                  )=>{    this.min=60
                  clearInterval(this.test)
                  },1000*0.5)
             
            }
              
        })
    
    
        },
        huan() {
          this.src = "http://localhost:9999/review?t=" + Math.random();
        },
        login(){
          const data1 ={
            "password":this.loginForm.password,
            "email": this.loginForm.email
          }
          console.log(data1);
          axios.post("http://localhost:9999/winter/admin/login",data1).then((resp)=>{
            if(resp.data.code===0){
                   this.$message({
               message: resp.data.message,
               type: 'success'
             });
             this.$router.push({path:'/editor'})
            }
            else{
                  this.$message.error(resp.data.message);
            }
          })
        },
    
        handleClose(done) {
          this.$confirm('确认关闭?')
              .then(_ => {
                done();
              })
              .catch(_ => {
              });
        },
    
        submitForm() {
          this.$refs.ruleForm.validate((valid) => {
            console.log(valid);
            if (valid != true) {
              return;
            }
            const data = {
              name: this.ruleForm.name,
              password: this.ruleForm.password,
              email: this.ruleForm.email,
              confirmCode: this.ruleForm.confirmCode
    
            }
    
            console.log(data);
            axios.post('http://localhost:9999/winter/admin/insert1', data)
                .then((res) => {
                  if (res.data.code === 0) {
                    this.$message({
                      message: res.data.message,
                      type: 'success'
                    });
                    // dialogVisible1 = true ; dialogVisible=false
                    this.dialogVisible1=false;
                    this.dialogVisible=true;
                    // this.$router.push({path: '/editor'});
                    console.log(data);
                  } else {
                    this.$message.error(res.data.message);
                  }
                }).catch((err) => {
              console.log(err);
              // console.log(data);
            })
          })
        }
        ,
    
        resetForm() {
          // this.ruleForm.resetFields();
          this.$refs["ruleForm"].resetFields();
          // this.ruleForm.name='';
          // this.ruleForm.password='';
          // this.ruleForm.repassword='';
        }
      }
    };
    </script>
    
    
    <style scoped>
    .b_container {
      background-image: url("https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=2215631652,1626040583&fm=26&gp=0.jpg");
      
    }
    
    .product-desc {
      font-family: '楷体';
      font: 20px Extra large;
      line-height: 50px;
    }
    
    .product-desc_C {
      font: 14px Base;
    
    }
    .main{
      padding-top: 10px; 
    }
    .input{
    margin-left: 0px;
    width: 65%;
    }
    .button{
         display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
    }
    .input1{
    margin-left: 60px;
    width: 65%;
    }
    .input2{
    margin-left: 60px;
    width: 40%;
    }
    </style>
    
    

    源码
    前端
    https://gitee.com/laobinggan/new_-winter_-pro
    后端
    https://gitee.com/laobinggan/new_-winter

    展开全文
  • 这是我这学期的java web期末测试题,有关于网上花店...登陆页面提供新用户注册的超链接,链接到注册页面,当用户输入正确的登录名密码时,将用户信息保存到CookieSession中,并跳转至主页面,否则提示登录失败。
  • Blog网站主要是实现注册用户登录、管理相关信息、博文及相关评论、查看留言、友情链接、及图片的上传图像的播放而为上网用户提供按博文主题搜索,查看注册用户的博文及提出相关评论,并为注册用户写留言,游览注册...
  • 专业防范ASP、PHP、PERL、JSP等脚本程序的洪水式Flood调用导致数据库和WEB崩溃的拒绝服务攻击。 ★ 对付DDoS工具 XDOS、HGOD、SYNKILLER、CC、GZDOS、PKDOS、JDOS、KKDOS、SUPERDDOS、FATBOY、SYNKFW、DDOSBINGDUN...
  • 用servlet校验密码2

    2019-03-30 11:59:00
    上一次我们用了servlet实现了在servlet里设置usernamepassword验证登录的过程,这一次通过一段时间Java Web的学习,写一个简单连接mysql的注册登陆界面来个总结。 开始我们先设置一个User类 再写一个...

    上一次我们用了servlet实现了在servlet里设置username和password验证登录的过程,这一次通过一段时间Java Web的学习,写一个简单连接mysql的注册登陆界面来做个总结。

    开始我们先设置一个User类

     

    再写一个DBOper就是连接mysql数据库,一开始的时候用的时候dbname,dbuser,dbpwd这样的值,然后在web.xml里输入再获取,但弄了半天连接不上数据库,最后还是舍弃了变量,直接在URL那就配置好了数据库用户名和密码

    关于数据的增删改查

    紧接着就是LoginServlet

    注册用户所用的addUserServlet

     

     最后我们所需的登录页面,点击注册会进入addUser.jsp

    如果不是servlet3.0以上,就在web.xml(如果没有web.xml文件的话,在eclipse创建动态网络项目时这个一定要选中

     

    )里配置servlet和servlet-mapping

     附上源代码百度云下载地址

    链接:https://pan.baidu.com/s/1GPghnxIS2ledkECO6BXA4A
    提取码:bi0d

     

    转载于:https://www.cnblogs.com/charlies1/p/10626394.html

    展开全文
  • Struct2框架学习

    2019-07-24 21:04:30
    笔者在的项目中涉及到了用户管理部分,需要做注册登陆部分,用到了struct2. Struct2 的简介有很多,这里不再赘述。 学这框架的原因,个人理解为这个struct2连接了web业务逻辑层,实现了数据间的交互响应。 而...

    Struct2

    出现原因
    框架的出现是为了解决软件设计过程中的某个痛点,而struct2的出现恰恰解决了前端和业务逻辑层链接部分的繁琐代码,提高了开发效率。
    用在何处
    我目前在做的项目中涉及到了用户管理部分,需要做登陆注册部分,使前端和业务逻辑进行链接,所以用到了struct2。
    简介与理解
    Struct2 的简介有很多,看完也是一头雾水,个人理解为struct2连接了web层和业务逻辑层,实现了数据间的交互响应。这里不再赘述。值得一提的是Struct2和Struct1之间没有必然的关系,Struct1的缺点太多,所以推翻做出了Struct2。

    流程

    浏览器→Tomcat→web.xml→过滤器→struct.xml→创建类→返回值→struct.xml→浏览器
    (浏览器发出请求传送到Tmocat,Tomcat进行转换)

    展开全文
  • Blog网站主要是实现注册用户登录、管理相关信息、博文及相关评论、查看留言、友情链接、及图片的上传图像的播放而为上网用户提供按博文主题搜索,查看注册用户的博文及提出相关评论,并为注册用户写留言,游览注册...
  • 客户端是一个标准的浏览器,服务器端是WebServer,而WebServer与数据库和应用服务器的紧密结合, 使得这种模式的应用范围不断扩大,它已不仅仅用于网上查询,有很多部门的业务系统、 企业的MIS系统纷纷采用这种模式...
  • asp.net知识库

    2015-06-18 08:45:45
    ASP.NET 2.0构建动态导航的Web应用程序(TreeViewMenu ) 体验.net2.0的优雅(3) -- 为您的 SiteMap 添加 控制转发功能 GridView控件使用经验 ASP.NET 2.0:弃用 DataGrid 吧,有新的网格控件了! ASP.NET2.0控件...
  • asp在线考试系统(asp+access实现)

    热门讨论 2009-04-04 19:34:08
    客户端是一个标准的浏览器,服务器端是WebServer,而WebServer与数据库和应用服务器的紧密结合, 使得这种模式的应用范围不断扩大,它已不仅仅用于网上查询,有很多部门的业务系统、 企业的MIS系统纷纷采用这种模式...
  • 本项目采用mysql做数据库,下载后请先看read_me.txt,按照说明可运行程序。 系统默认是单机情况,如果要进行局域网的测试,请点击登陆窗口下方的设置,然后输入服务端程序所运行机器的IP。 另外附上我的论文,...
  • 04 一个最简答web框架 05 MVC模式MTV模式 06 django的一个简单应用 07 django静态文件之static 08 django的url控制系统 09 django的urlConf补充 第50章 01 django之视图函数的介绍 02 django视图之redirec 03 ...
  • AlkkCMS 免费版 V1.0.rar

    2019-07-05 01:46:10
    ▪ 会员虚拟币积分,可限制购买或达积分查看新闻,可单独设置每个分类添加新闻增加积分数▪ 数据库采集功能,可方便快速的迁移其它系统的access与ms sql新闻数据 ▪ rss新闻订阅功能,可订阅分类或会员rss专题 ...
  • java源码包---java 源码 大量 实例

    千次下载 热门讨论 2013-04-18 23:15:26
    有添加图片水印文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以改进成小工具。 Java右键弹出...
  • 有添加图片水印文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以改进成小工具。 Java右键弹出...
  • JAVA上百实例源码以及开源项目

    千次下载 热门讨论 2016-01-03 17:37:40
    有添加图片水印文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以改进成小工具。 Java右键弹出...
  • 国度社区

    2004-09-14 02:46:30
    2. 用户登陆:可以选择在登陆页面,系统自动纪录用户登陆信息,只有登陆用户才能进入自己的空间通过WEB维护网站。3. 用户等级:用户共分为五个等级,对应不同的空间大小,从1到5,依次为10兆/50兆/100兆/200兆/500兆...
  • ·用户整合接口,可实现跨站会员注册、修改、登陆、退出、删除、取资料 ·按web标准规范代码,html编辑器支持Xhtml ·网站调查功能 ·广告管理系统,广告分组按权限随机显示 ·可设置网站与分类限指定IP段可访问...
  • 人才招聘系统_4.2.rar

    2020-08-10 17:12:51
    针对上述操作系统,我们对软件了大量的测试实地检验,保证可以安全稳定的运行,但您仍需做好服务器操作系统的安全防备措施,例如Windows用户需更改MYSQL的初始密码,使用较新的稳定的软件版本等。 语言及数据库...
  • ·用户整合接口,可实现跨站会员注册、修改、登陆、退出、删除、取资料 ·按web标准规范代码,html编辑器支持Xhtml ·网站调查功能 ·广告管理系统,广告分组按权限随机显示 ·可设置网站与分类限指定IP段可访问...
  • vc++ 应用源码包_1

    热门讨论 2012-09-15 14:22:12
    系统硬件信息、存储设备管理、鼠标及键盘、声音视频、图形图像、网络、数据库) 《远程控制编程技术》源代码 内含(重启、图片操作、ip操作、键盘与鼠标、客户端以及服务端、文件传输等实例源码) 多个VC++...
  •  负责显示热门的商品信息,以及显示本网站的网站信息,导航栏负责跳转到各个页面,没有登录显示按钮可以让用户进行登陆和注册。已登录的用户显示用户名,并且可以发布商品信息,查看个人信息等。进入首页的时候,...
  • vc++ 应用源码包_2

    热门讨论 2012-09-15 14:27:40
    系统硬件信息、存储设备管理、鼠标及键盘、声音视频、图形图像、网络、数据库) 《远程控制编程技术》源代码 内含(重启、图片操作、ip操作、键盘与鼠标、客户端以及服务端、文件传输等实例源码) 多个VC++...
  • java源码包2

    千次下载 热门讨论 2013-04-20 11:28:17
    有添加图片水印文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以改进成小工具。 Java右键弹出...
  • 消费者为服务对象,借以二者相互依存的关系,以互动的形式成就全诚外卖通一个完善的WEB系统平台,在这个平台里,商家可以扩大销售、得到系统平台的形象宣传,让更多的消 费者以网络的形式认知商家的特色存在;...
  • 仿淘宝网程序无错版

    2012-08-05 09:41:06
    然后:把根目录的web.config配置(可以不) [注:将下面代码拷入web.config中的<system.web></system.web>节中] , Discuz.Forum" name="HttpModule" /> 其次:把BBS里Bin文件夹下的所有dll拷贝到根目录Bin的...
  • vc++ 应用源码包_6

    热门讨论 2012-09-15 14:59:46
    系统硬件信息、存储设备管理、鼠标及键盘、声音视频、图形图像、网络、数据库) IOCP 完成端口编程 《远程控制编程技术》源代码 内含(重启、图片操作、ip操作、键盘与鼠标、客户端以及服务端、文件传输等实例...
  • vc++ 应用源码包_5

    热门讨论 2012-09-15 14:45:16
    系统硬件信息、存储设备管理、鼠标及键盘、声音视频、图形图像、网络、数据库) IOCP 完成端口编程 《远程控制编程技术》源代码 内含(重启、图片操作、ip操作、键盘与鼠标、客户端以及服务端、文件传输等实例...

空空如也

空空如也

1 2 3
收藏数 55
精华内容 22
关键字:

web连数据库做登陆和注册