美文网首页
微信投票项目

微信投票项目

作者: AAnna珠 | 来源:发表于2019-05-13 18:47 被阅读0次

    一、项目介绍

    微信投票系统

    前台系统:

    用户用的,首页,报名,奖品,排行,投票,刷礼物

    后台系统:

    系统管理员在用,创建投票活动(创建二维码),看到所有的投票记录,看到所有刷礼物的记录

    技术点:

    前后端分离,html、css、JavaScript、jQuery、ajax,SpringMVC,mybatis,spring IOC,spring AOP,mysql,微信接口(微信登录,微信支付)

    开发工具:

    Eclipse(Java),Navicat(数据库),Hbuilder(画页面)

    二、数据库设计

    1.活动表(activity)

    Aid:活动编号(主键,流水号)

    Atitle:活动名称

    Adesc:活动描述

    Imgurl:图片地址

    Starttime:活动开始时间

    Endtime:活动结束时间

    Totalpeople:总报名人数

    Totaltickets:总投票数

    Totalaccess:总访问量

    Votelimit:每一个投票人,每天最多可以投票的次数(5)

    2、选手表(candidate)

    Cid:选手编号(主键)

    Aid:活动编号

    Cname:选手姓名

    Cdeclaration:选手宣言

    Mobile:手机

    Sex:性别

    Address:收货地址

    Tickets:票数

    Hots:热度

    Gitfs:礼物

    Imgurl:封面图片(主图片)

    3.选手图片表(images)

    Id:主键

    Cid:选手编号

    Imgurl:图片地址

    4.投票记录表(voterecord,)

    Id:主键

    Openid:登录人的ip

    Cid:选手编号

    Aid:活动编号

    Votetime:投票时间

    5.奖品表(prize)

    Pid:主键

    Aid:活动编号

    Level:奖品类别(一等奖,二等奖,三等奖)

    Pname:奖品名称

    Pcount:奖品数量

    Pimg:奖品图片

    6.获奖表

    Id:主键

    Aid:活动编号

    Cid:选手编号

    Gid:奖品编号

    三、框架搭建

    1.1 web.xml

    <?xml version="1.0" encoding="UTF-8"?>

    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">

      <display-name>wechatvote</display-name>

      <welcome-file-list>

        <welcome-file>index.html</welcome-file>

        <welcome-file>index.htm</welcome-file>

        <welcome-file>index.jsp</welcome-file>

        <welcome-file>default.html</welcome-file>

        <welcome-file>default.htm</welcome-file>

        <welcome-file>default.jsp</welcome-file>

      </welcome-file-list>

    <!-- 配置监听器,启动spring容器 -->

    <context-param>

    <param-name>contextConfigLocation</param-name>

    <param-value>classpath:applicationContext.xml</param-value>

    </context-param>

    <listener>

    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

    </listener>

    <!-- 配置过滤器,解决乱码问题 -->

    <filter>

    <filter-name>CharacterEncodingFilter</filter-name>

    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>

    <init-param>

    <param-name>encoding</param-name>

    <param-value>utf-8</param-value>

    </init-param>

    <init-param>

    <param-name>forceEncoding</param-name>

    <param-value>true</param-value>

    </init-param>

    </filter>

    <filter-mapping>

    <filter-name>CharacterEncodingFilter</filter-name>

    <url-pattern>/*</url-pattern>

    </filter-mapping>

    <!-- 配置springmvc的前端控制器-->

    <servlet>

    <servlet-name>springmvc</servlet-name>

    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

    <init-param>

    <param-name>contextConfigLocation</param-name>

    <param-value>classpath:springmvc.xml</param-value>

    </init-param>

    </servlet>

    <servlet-mapping>

    <servlet-name>springmvc</servlet-name>

    <url-pattern>/</url-pattern>

    </servlet-mapping>

    </web-app>

    1.2springmvc.xml

    <?xml version="1.0" encoding="UTF-8"?>

    <beans xmlns="http://www.springframework.org/schema/beans"

    xmlns:mvc="http://www.springframework.org/schema/mvc" 

    xmlns:p="http://www.springframework.org/schema/p"

    xmlns:context="http://www.springframework.org/schema/context"

    xmlns:util="http://www.springframework.org/schema/util"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation="http://www.springframework.org/schema/beans  

                http://www.springframework.org/schema/beans/spring-beans-4.2.xsd  

                http://www.springframework.org/schema/context   

                http://www.springframework.org/schema/context/spring-context-4.2.xsd  

                http://www.springframework.org/schema/mvc  

                http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd

                http://www.springframework.org/schema/util  

                http://www.springframework.org/schema/util/spring-util-4.2.xsd">

    <!-- 开启注解驱动 -->

    <mvc:annotation-driven></mvc:annotation-driven>

    <!-- 配置控制器包扫描 -->

    <context:component-scan base-package="com.neuedu.controllers"></context:component-scan>

    <!-- 配置静态资源的访问 -->

    <mvc:default-servlet-handler/>

    <!-- 配置二进制提交方式,配置文件上传组件 -->

    <bean id="multipartResolver"

    class="org.springframework.web.multipart.commons.CommonsMultipartResolver">

    <!-- 设置上传文件的最大尺寸为5MB -->

    <property name="maxUploadSize">

    <value>5242880</value>

    </property>

    </bean>

    </beans>

    1.3applicationContext.xml

    <?xml version="1.0" encoding="UTF-8"?>

    <beans

        xmlns="http://www.springframework.org/schema/beans"

        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

        xmlns:context="http://www.springframework.org/schema/context"

        xmlns:aop="http://www.springframework.org/schema/aop"

        xmlns:tx="http://www.springframework.org/schema/tx"

        xsi:schemaLocation="

        http://www.springframework.org/schema/beans

        http://www.springframework.org/schema/beans/spring-beans-4.2.xsd

        http://www.springframework.org/schema/context

        http://www.springframework.org/schema/context/spring-context-4.2.xsd

        http://www.springframework.org/schema/aop

        http://www.springframework.org/schema/aop/spring-aop-4.2.xsd

        http://www.springframework.org/schema/tx

        http://www.springframework.org/schema/tx/spring-tx-4.2.xsd">

        <!-- 加载db.properties -->

        <context:property-placeholder location="classpath:db.properties"/>

        <!-- 配置数据源 -->

        <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"

    destroy-method="close">

    <property name="driverClassName" value="${jdbc.driver}" />

    <property name="url" value="${jdbc.url}" />

    <property name="username" value="${jdbc.username}" />

    <property name="password" value="${jdbc.password}" />

    <property name="maxActive" value="30" />

    <property name="maxIdle" value="5" />

    </bean>

    <!-- 配置sessionFactory -->

    <bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">

    <!-- 加载mybatis的主配置文件-->

    <property name="configLocation" value="classpath:SqlMapConfig.xml"></property>

    <property name="dataSource" ref="dataSource"></property>

    </bean>

    <!-- 配置mapper -->

    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">

    <property name="basePackage" value="com.neuedu.model.mapper"></property>

    <property name="sqlSessionFactoryBeanName" value="sessionFactory"></property>

    </bean>

    <!-- 事务 -->

    <!-- 声明事务管理器 -->

    <bean id="txm" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">

    <property name="dataSource" ref="dataSource"></property>

    </bean>

    <!-- 设置事务的传播特性,通知 -->

    <tx:advice id="txAdvice" transaction-manager="txm">

    <tx:attributes>

    <tx:method name="save*" propagation="REQUIRED"/>

    <tx:method name="update*" propagation="REQUIRED"/>

    <tx:method name="delete*" propagation="REQUIRED"/>

    <tx:method name="select*" propagation="REQUIRED"/>

    </tx:attributes>

    </tx:advice>

    <!-- 设置切面 -->

    <aop:config>

    <aop:advisor advice-ref="txAdvice" pointcut="execution(* com.neuedu.model.service.*.*(..))"/>

    </aop:config>

    </beans>

    1.4 SqlMapConfig.xml

    <?xml version="1.0" encoding="UTF-8"?>

    <!DOCTYPE configuration

    PUBLIC "-//mybatis.org//DTD Config 3.0//EN"

    "http://mybatis.org/dtd/mybatis-3-config.dtd">

    <configuration>

    <typeAliases>

    <package name="com.neuedu.model.po"/>

    </typeAliases>

    </configuration>

    1.5 Mapper.xml

    <?xml version="1.0" encoding="UTF-8" ?>

    <!DOCTYPE mapper

    PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"

    "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

    <mapper namespace="com.neuedu.model.mapper.DemoMapper">

    <select id="findUserById" parameterType="int" resultType="user">

    select * from user where id = #{id}

    </select>

    </mapper>

    相关文章

      网友评论

          本文标题:微信投票项目

          本文链接:https://www.haomeiwen.com/subject/kzbraqtx.html