(自己搞定了)C++编写一个在单词本内单词测试的程序,求大佬捉虫

1.错误代码LINK2019,LINK1120

#include "exam.h"
#include "ui.h"
#include <iostream>
#include <string>
#include "stdlib.h"
#include "time.h"

using namespace std;

static const string exam_ui_prompt =
"\n\n"
"\t|*******************************|\n"
"\t|*   请您选择考试类别        *|\n"
"\t|*       1 看中文写英文        *|\n"
"\t|*       2 看英文写中文        *|\n"
"\t|*       3 看解释写成语        *|\n"
"\t|*       0 返回上级          *|\n"
"\t      请输入(1,2,3或0):  ";

void exam_ui() {
    void exam_ui_english_for_chinese(); {
        //装载词库
        dict_load(
            &dictionaries[ENGLISH_CHINESE],
            DICT_PATH DICT_ENGLISH_CHINESE
        );

        //生成考试题目
        Examination exam;
        exam_create(&exam, &dictionaries[ENGLISH_CHINESE]);
        for (int i = 0; i < exam.words.size(); i++) {
            CLEAR();
            cout << "\n\n";
            cout << "\t|**************************|\n";
            meaning_display(exam.meanings[i]);
            cout << "\n";
            cout << "\t|*************************|\n";
            string word = get_input_string("\t   请输入英文答案(0 退出) : ");
            cout << "\t 请输入英文答案 (0 退出):";
            std::getline(cin, word);
            if (word == exam.words[i]) {
                cout << "\t  正确!!!" << endl;
                string op = get_input_string("\t  请输入(0 退出, 其他  下一题):");
                if (bool op = "0") {
                    break;
                }
            }
            else if (word == "0") {
                break;
            }
            else {
                cout << "\t    错误, 继续加油哦" << endl;
                    //继续下去还答这道题
                    i--;
            }
        }
    }
    CLEAR();
    cout << exam_ui_prompt;
    string op;
    std::getline(cin, op);
    if (op == "1") {
        exam_ui_english_for_chinese();
    }
    else if (op == "2") {

    }
    else if (op == "0") {
        return;
    }
    exam_ui();
}
/**
生成一个[min,max)之间的随机整数
*/
 static int radom_index(int min, int max) {
    return (int)(min + (double)rand() / (double)RAND_MAX * (max - min));
}
/*
从字典随机生成一个试卷
*/
void exam_create(Examination* exam, Dictionary* dict) {
    srand(time(NULL));
    int wordcount = dict->words.size();
    int itemcount = wordcount < 10 ? wordcount : 10;
    for (int i = 0; i < itemcount; i++) {
        int idx = radom_index(0, wordcount);
        exam->words.push_back(dict->words[idx]);
        exam->meanings.push_back(dict->meanings[idx]);
    }
}

void exam_ui_display()
{
    return;
}

void exam_ui_chinese_for_english()
{
    return;
}

void exam_ui_english_for_chinese()
{
}


3.我看我的头文件里都声明定义了但我还是不知道怎么解决这个错误

#ifndef _EXAM_H
#define _EXAM_H

#include <string>
#include <vector>
#include "dict.h"

using namespace std;

typedef struct {
    vector<string>words;
        vector< vector < string > >meanings;
}Examination;

void exam_create(Examination* exam, Dictionary* dict);

void exam_ui_display();
void exam_ui_chinese_for_english();
void exam_ui_english_for_chinese();

bool op;
string word;

#endif//!_EXAM_H



c++
no1caiji
no1caiji 回复Kim_小星兴: 好滴!我会注意的,谢谢你:)
大约一个月之前 回复
qq_39575645
Kim_小星兴 你问问题应该要把你的现象或者报错信息说出来,然后再把最精简的相关代码贴出来,这样人家才能快速的发现你的问题在哪里
大约一个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
(自己搞定了)C++编写一个在单词本内单词测试的程序,求大佬捉虫
1.错误代码LINK2019,LINK1120 ``` #include "exam.h" #include "ui.h" #include <iostream> #include <string> #include "stdlib.h" #include "time.h" using namespace std; static const string exam_ui_prompt = "\n\n" "\t|*******************************|\n" "\t|* 请您选择考试类别 *|\n" "\t|* 1 看中文写英文 *|\n" "\t|* 2 看英文写中文 *|\n" "\t|* 3 看解释写成语 *|\n" "\t|* 0 返回上级 *|\n" "\t 请输入(1,2,3或0): "; void exam_ui() { void exam_ui_english_for_chinese(); { //装载词库 dict_load( &dictionaries[ENGLISH_CHINESE], DICT_PATH DICT_ENGLISH_CHINESE ); //生成考试题目 Examination exam; exam_create(&exam, &dictionaries[ENGLISH_CHINESE]); for (int i = 0; i < exam.words.size(); i++) { CLEAR(); cout << "\n\n"; cout << "\t|**************************|\n"; meaning_display(exam.meanings[i]); cout << "\n"; cout << "\t|*************************|\n"; string word = get_input_string("\t 请输入英文答案(0 退出) : "); cout << "\t 请输入英文答案 (0 退出):"; std::getline(cin, word); if (word == exam.words[i]) { cout << "\t 正确!!!" << endl; string op = get_input_string("\t 请输入(0 退出, 其他 下一题):"); if (bool op = "0") { break; } } else if (word == "0") { break; } else { cout << "\t 错误, 继续加油哦" << endl; //继续下去还答这道题 i--; } } } CLEAR(); cout << exam_ui_prompt; string op; std::getline(cin, op); if (op == "1") { exam_ui_english_for_chinese(); } else if (op == "2") { } else if (op == "0") { return; } exam_ui(); } /** 生成一个[min,max)之间的随机整数 */ static int radom_index(int min, int max) { return (int)(min + (double)rand() / (double)RAND_MAX * (max - min)); } /* 从字典随机生成一个试卷 */ void exam_create(Examination* exam, Dictionary* dict) { srand(time(NULL)); int wordcount = dict->words.size(); int itemcount = wordcount < 10 ? wordcount : 10; for (int i = 0; i < itemcount; i++) { int idx = radom_index(0, wordcount); exam->words.push_back(dict->words[idx]); exam->meanings.push_back(dict->meanings[idx]); } } void exam_ui_display() { return; } void exam_ui_chinese_for_english() { return; } void exam_ui_english_for_chinese() { } ``` 3.我看我的头文件里都声明定义了但我还是不知道怎么解决这个错误 ``` #ifndef _EXAM_H #define _EXAM_H #include <string> #include <vector> #include "dict.h" using namespace std; typedef struct { vector<string>words; vector< vector < string > >meanings; }Examination; void exam_create(Examination* exam, Dictionary* dict); void exam_ui_display(); void exam_ui_chinese_for_english(); void exam_ui_english_for_chinese(); bool op; string word; #endif//!_EXAM_H ```
C++程序编译通过,运行后报错与64位windows不兼容
随便一个C++程序,没有cin语句就可以正常执行,但只要有cin语句的时候程序可以正常build,然后运行后这个错误窗口和命令行一起弹出来,不是codeblock的问题,我换了DEV-C和VS都是这个错误,网上的方法试了试没搞定,有没有大佬知道这问题怎么解决?谢谢 ![图片说明](https://img-ask.csdn.net/upload/201908/28/1566980122_138688.png)
DLL文件包含自己生成的lib文件,编译错误
1. 我先用空项目 添加了lua的文件 生成了 lua.lib文件 2. 我创建了一个MFC_DLL文件 1)在项目->属性->C/C++->附加包含目录里包含了 lua所有.h .c的文件夹 2)在项目->属性->连接器->常规->附加库目录里包含了lua.lib的文件夹 3)在项目->属性->连接器->输入->附加依赖项里输入了lua.lib 我创建的 .h文件的代码 #infndef LUASSSS_H #define LUASSSS_H #include <windows.h> extern "C" { #include "lua.h" #include "lualib.h" #include "lauxlib.h" } extern lua_State *L; #endif 我创建的 .cpp文件的代码 #include "StdAfx.h" #include "Luassss.h" lua_State *L = luaL_newstate(); 代码显示无错误 但是编译的时候出现各种错误 请问是我哪里出错了????? 谢谢帮忙 我自己摸索了2天都没搞定 头都大了 error LNK2005: _strstr 已经在 libcmtd.lib(strstr.obj) 中定义 error LNK2005: _strchr 已经在 libcmtd.lib(strchr.obj) 中定义 error LNK2005: _fclose 已经在 libcmtd.lib(fclose.obj) 中定义 error LNK2005: _ferror 已经在 libcmtd.lib(feoferr.obj) 中定义 error LNK2005: _ungetc 已经在 libcmtd.lib(ungetc.obj) 中定义 error LNK2005: ___iob_func 已经在 libcmtd.lib(_file.obj) 中定义 error LNK2005: _fread 已经在 libcmtd.lib(fread.obj) 中定义 error LNK2005: _feof 已经在 libcmtd.lib(feoferr.obj) 中定义 error LNK2005: __errno 已经在 libcmtd.lib(dosmap.obj) 中定义 error LNK2005: _realloc 已经在 libcmtd.lib(dbgrealloc.obj) 中定义 error LNK2005: _free 已经在 libcmtd.lib(dbgfree.obj) 中定义 1>MSVCRTD.lib(MSVCR100D.dll) : error LNK2005: _exit 已经在 libcmtd.lib(crt0dat.obj) 中定义 1>MSVCRTD.lib(MSVCR100D.dll) : error LNK2005: _isspace 已经在 libcmtd.lib(_ctype.obj) 中定义 1>MSVCRTD.lib(MSVCR100D.dll) : error LNK2005: _strtoul 已经在 libcmtd.lib(strtol.obj) 中定义 1>MSVCRTD.lib(MSVCR100D.dll) : error LNK2005: _strtod 已经在 libcmtd.lib(strtod.obj) 中定义 1>MSVCRTD.lib(MSVCR100D.dll) : error LNK2005: _sprintf 已经在 libcmtd.lib(sprintf.obj) 中定义 1>MSVCRTD.lib(MSVCR100D.dll) : error LNK2005: _strcspn 已经在 libcmtd.lib(strcspn.obj) 中定义 1>MSVCRTD.lib(MSVCR100D.dll) : error LNK2005: _strcoll 已经在 libcmtd.lib(strcoll.obj) 中定义 1>MSVCRTD.lib(MSVCR100D.dll) : error LNK2005: _floor 已经在 libcmtd.lib(_floor_pentium4_.obj) 中定义 1>MSVCRTD.lib(MSVCR100D.dll) : error LNK2005: _iscntrl 已经在 libcmtd.lib(_ctype.obj) 中定义 1>MSVCRTD.lib(MSVCR100D.dll) : error LNK2005: _isalnum 已经在 libcmtd.lib(_ctype.obj) 中定义 1>MSVCRTD.lib(MSVCR100D.dll) : error LNK2005: _isalpha 已经在 libcmtd.lib(_ctype.obj) 中定义 1>MSVCRTD.lib(MSVCR100D.dll) : error LNK2005: _isdigit 已经在 libcmtd.lib(_ctype.obj) 中定义 1>MSVCRTD.lib(MSVCR100D.dll) : error LNK2005: _localeconv 已经在 libcmtd.lib(lconv.obj) 中定义 1>MSVCRTD.lib(ti_inst.obj) : error LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) 已经在 libcmtd.lib(typinfo.obj) 中定义 1>MSVCRTD.lib(ti_inst.obj) : error LNK2005: "private: class type_info & __thiscall type_info::operator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) 已经在 libcmtd.lib(typinfo.obj) 中定义 1> 正在创建库 ..\test\testdll.lib 和对象 ..\test\testdll.exp 1>LINK : warning LNK4098: 默认库“MSVCRTD”与其他库的使用冲突;请使用 /NODEFAULTLIB:library 1>..\test\testdll.dll : fatal error LNK1169: 找到一个或多个多重定义的符号 1> 1>生成失败。 1> 1>已用时间 00:00:01.05 ========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
spring boot mybatis 枚举错误,无法映射
spring boot mybatis 枚举错误 * 今天遇到一个问题,解决了好几个小时,没有搞定,搞到现在,有大佬可以帮我看下吗?万分感谢,没有分了,枚举映射,在idea中可以使用, 部署使用java -jar 方式就报错 * jdk1.8 * mybatis3.0.7.1 * application.yml环境为prod * ``` mybatis-plus: #枚举 typeHandlersPackage: com.xxx.common.module.handler ``` * 查询代码,不能转换 * ``` public LsAppEntity queryByAppKey(String appKey) { return this.getOne(new QueryWrapper<LsAppEntity>() .eq("app_key", appKey) .ne("status", StatusEnum.删除)); } ``` 1. Enum代码 ``` /** * Enum - 状态 * * @author xxx * @version 1.0.0 */ @JSONType(serializeEnumAsJavaBean = true) @JsonFormat(shape = JsonFormat.Shape.OBJECT) public enum StatusEnum implements BaseEnum<StatusEnum, Integer> { /** 删除 */ 删除(-1, "删除"), /** 无效 */ 无效(0, "无效"), /** 有效 */ 有效(1, "有效"); /** * 值. */ private Integer value; /** * 名称. */ private String name ; static { subClass.add(StatusEnum.class); } StatusEnum(Integer value, String name) { this.value = value; this.name = name; } @Override public Integer getValue() { return value; } public void setValue(Integer value) { this.value = value; } @Override public String getName() { return name; } public void setName(String name) { this.name = name; } //根据key获取枚举 public static StatusEnum getEnumByValue(Integer value){ if (null == value){ return null; } for(StatusEnum e: StatusEnum.values()){ if(e.getValue().equals(value)){ return e; } } return null; } } ``` 2. 枚举转换处理器 ``` package com.xxx.common.module.handler; import com.xxx.common.module.enums.*; import lombok.extern.slf4j.Slf4j; import org.apache.ibatis.type.BaseTypeHandler; import org.apache.ibatis.type.JdbcType; import org.apache.ibatis.type.MappedTypes; import java.sql.CallableStatement; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; /** * 枚举转换处理器 * * @author xxx * @version 1.0.0 */ @Slf4j @MappedTypes(value = {StatusEnum.class}) public final class BaseEnumTypeHandler<E extends BaseEnum> extends BaseTypeHandler<E> { private Class<E> type; private E[] enums; public BaseEnumTypeHandler() { } public BaseEnumTypeHandler(Class<E> type) { if (type == null) { throw new IllegalArgumentException("Type argument cannot be null"); } this.type = type; this.enums = this.type.getEnumConstants(); if (this.enums == null) { throw new IllegalArgumentException(type.getSimpleName() + " does not represent an enum type."); } } @Override public void setNonNullParameter(PreparedStatement ps, int i, E parameter, JdbcType jdbcType) throws SQLException { //BaseTypeHandler 进行非空校验 log.debug("index : {}, parameter : {},jdbcType : {} ", i, parameter.getValue(), jdbcType); if (jdbcType == null) { ps.setObject(i, parameter.getValue()); } else { ps.setObject(i, parameter.getValue(), jdbcType.TYPE_CODE); } } @Override public E getNullableResult(ResultSet rs, String columnName) throws SQLException { Object code = rs.getObject(columnName); if (rs.wasNull()) { return null; } return getEnmByCode(code); } @Override public E getNullableResult(ResultSet rs, int columnIndex) throws SQLException { Object code = rs.getObject(columnIndex); if (rs.wasNull()) { return null; } return getEnmByCode(code); } @Override public E getNullableResult(CallableStatement cs, int columnIndex) throws SQLException { Object code = cs.getObject(columnIndex); if (cs.wasNull()) { return null; } return getEnmByCode(code); } private E getEnmByCode(Object code) { if (code == null) { throw new NullPointerException("the result code is null " + code); } if (code instanceof Integer) { for (E e : enums) { if (e.getValue() == code) { return e; } } throw new IllegalArgumentException("Unknown enumeration type , please check the enumeration code : " + code); } if (code instanceof String) { for (E e : enums) { if (code.equals(e.getValue())) { return e; } } throw new IllegalArgumentException("Unknown enumeration type , please check the enumeration code : " + code); } throw new IllegalArgumentException("Unknown enumeration type , please check the enumeration code : " + code); } } ``` 3. 报错信息 2020-01-20 02:45:35.879 ERROR 2472 --- [nio-8081-exec-1] c.l.exception.RRExceptionHandler : nested exception is org.apache.ibatis.executor.result.ResultMapException: Error attempting to get column 'status' from result set. Cause: java.lang.IllegalArgumentException: No enum constant com.xxx.common.module.enums.StatusEnum.1 * org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.result.ResultMapException: Error attempting to get column 'status' from result set. Cause: java.lang.IllegalArgumentException: No enum constant com.xxx.common.module.enums.StatusEnum.1 * at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77) * at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446) * at com.sun.proxy.$Proxy132.selectList(Unknown Source) * at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230) * at com.baomidou.mybatisplus.core.override.PageMapperMethod.executeForMany(PageMapperMethod.java:173) * at com.baomidou.mybatisplus.core.override.PageMapperMethod.execute(PageMapperMethod.java:86) * at com.baomidou.mybatisplus.core.override.PageMapperProxy.invoke(PageMapperProxy.java:64) * at com.sun.proxy.$Proxy137.selectList(Unknown Source) * at com.baomidou.mybatisplus.extension.service.impl.ServiceImpl.getOne(ServiceImpl.java:259) * at com.baomidou.mybatisplus.extension.service.IService.getOne(IService.java:230) * at com.xxx.common.module.service.impl.AppServiceImpl.queryByAppKey(AppServiceImpl.java:100) * at com.xxx.common.module.service.impl.AppServiceImpl$$FastClassBySpringCGLIB$$9380a940.invoke(<generated>) * at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) * at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:684) * at com.xxx.common.module.service.impl.AppServiceImpl$$EnhancerBySpringCGLIB$$307b01.queryByAppKey(<generated>) * at com.xxx.common.module.service.impl.AppInfoServiceImpl.validateBaseApi(AppInfoServiceImpl.java:141) * at com.xxx.common.module.service.impl.AppInfoServiceImpl.appInfo(AppInfoServiceImpl.java:157) * at com.xxx.common.module.service.impl.AppInfoServiceImpl$$FastClassBySpringCGLIB$$2bb67632.invoke(<generated>) * at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) * at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:684) * at com.xxx.common.module.service.impl.AppInfoServiceImpl$$EnhancerBySpringCGLIB$$8bd88917.appInfo(<generated>) * at com.xxx.controller.ApiAppProductController.list(ApiAppProductController.java:79) * at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) * at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) * at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) * at java.lang.reflect.Method.invoke(Method.java:483) * at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:189) * at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) * at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:102) * at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895) * at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:800) * at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) * at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1038) * at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) * at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) * at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908) * at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) * at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) * at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) * at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) * at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) * at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) * at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) * at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) * at com.xxx.common.xss.XssFilter.doFilter(XssFilter.java:24) * at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) * at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) * at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99) * at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) * at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) * at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) * at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:92) * at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) * at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) * at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) * at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:93) * at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) * at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) * at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) * at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200) * at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) * at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) * at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) * at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199) * at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) * at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490) * at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) * at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) * at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) * at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) * at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408) * at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) * at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:834) * at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1417) * at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) * at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) * at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) * at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) * at java.lang.Thread.run(Thread.java:745) * Caused by: org.apache.ibatis.executor.result.ResultMapException: Error attempting to get column 'status' from result set. Cause: java.lang.IllegalArgumentException: No enum constant com.xxx.common.module.enums.StatusEnum.1 * at org.apache.ibatis.type.BaseTypeHandler.getResult(BaseTypeHandler.java:68) * at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.applyAutomaticMappings(DefaultResultSetHandler.java:520) * at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.getRowValue(DefaultResultSetHandler.java:401) * at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleRowValuesForSimpleResultMap(DefaultResultSetHandler.java:355) * at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleRowValues(DefaultResultSetHandler.java:330) * at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleResultSet(DefaultResultSetHandler.java:303) * at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleResultSets(DefaultResultSetHandler.java:196) * at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:64) * at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:79) * at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) * at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) * at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) * at java.lang.reflect.Method.invoke(Method.java:483) * at org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:63) * at com.sun.proxy.$Proxy200.query(Unknown Source) * at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:63) * at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:326) * at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156) * at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:136) * at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:148) * at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:141) * at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) * at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) * at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) * at java.lang.reflect.Method.invoke(Method.java:483) * at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:433) * ... 77 common frames omitted * Caused by: java.lang.IllegalArgumentException: No enum constant com.xxx.common.module.enums.StatusEnum.1 * at java.lang.Enum.valueOf(Enum.java:238) * at org.apache.ibatis.type.EnumTypeHandler.getNullableResult(EnumTypeHandler.java:49) * at org.apache.ibatis.type.EnumTypeHandler.getNullableResult(EnumTypeHandler.java:26) * at org.apache.ibatis.type.BaseTypeHandler.getResult(BaseTypeHandler.java:66) * ... 102 common frames omitted
MYsql触发器判断语句。。有没有大佬来看看。老是报错
之前有个需求,一直没搞定,有没有大佬来帮忙看下。 同一个数据库两张表,A,B。字段不同。当A表插入数据,判断uid在B表中的UID是否存在,如果一样,则同步A表中的字段,a1,a2,a3到B表中的b1,b2,b3. 如果不存在,在B表中插入A表中的数据,a1,a2和b1,b2一一对应,但是字段名不同。一直测试没结果。
Android Studio 3.5.2 / 3.5.3 cocos2d-x 3.17.2 android编译问题
先上环境 Java:Java1.8.60 SDK:API -> android-28 Tools -> 26.1.1 NDK:android-ndk-r16b cocos官方说是以android-ndk-r16b测试的,所以我用了这个 ANT:1.10.7 Python:2.7.9 Android studio :3.5.3 cocos2d-x:cocos2d-x 3.17.2 好吧,就这些了,首先我用cocos new创建项目 用Android studio 3.5.3 打开项目,OK,测试成功!如图 <br><br> ![图片说明](https://img-ask.csdn.net/upload/201912/13/1576218933_195606.png) <br><br> 能编译成功中途也遇到了各种坑,先不说这个,再说一说后续开发的问题 比如:<br><br> ![图片说明](https://img-ask.csdn.net/upload/201912/13/1576219089_983324.png) <br><br> 上图就是我自己重新创建了一个MainScene的场景,在HelloWorldScene.cpp中引用这个类,并实例化,如图:<br><br> ![图片说明](https://img-ask.csdn.net/upload/201912/13/1576219341_669768.png) <br><br> 在HelloWorldScene::init()中创建一个sc的MainScene指针 <br><br> ![图片说明](https://img-ask.csdn.net/upload/201912/13/1576219348_260859.png) <br><br> 以上代码在VS2015 编译通过,或者创建一个按钮点击事件中创建MainScene场景,并replaceScene函数替换当前场景,VS编译没有问题,但android studio提示MsinScene::createScene()未定义!!! <br><br> ![图片说明](https://img-ask.csdn.net/upload/201912/13/1576219705_649754.png) <br><br> 说到这里,肯定有人会说,你应该是Android.mk没有包含cpp文件吧?<br><br> ![图片说明](https://img-ask.csdn.net/upload/201912/13/1576219788_453715.png) <br><br> 到底是哪里出了错误,为什么要这样对我啊 我在MainScene文件中定义其他的类或者继承类却能通过,如下:<br><br> ![图片说明](https://img-ask.csdn.net/upload/201912/13/1576220195_583121.png)![图片说明](https://img-ask.csdn.net/upload/201912/13/1576220201_747295.png)![图片说明](https://img-ask.csdn.net/upload/201912/13/1576220208_452735.png) <br><br> ![图片说明](https://img-ask.csdn.net/upload/201912/13/1576220308_238647.png) <br><br> 为什么会这样? 定义其他类都没有问题,Scene就搞不了事情了,救命~~啊 <br><br><br> 我自己搞定了,编译发现gradle.properties 中的编译模式是Cmake,并不是NDK-Build模式,如下:<br> PROP_BUILD_TYPE=cmake<br> 所以Android.mk文件包含ccp是没有用的,只能在项目根目录的CMakeLists.txt文件里包含cpp文件就可以了,如下图:<br><br> ![图片说明](https://img-ask.csdn.net/upload/201912/13/1576229813_129581.png) <br><br>纠结好久的问题终于解决了,希望能帮到别人<br> 我用的工具是:<br> android studio 3.5.3<br> cocos2d-x 3.17.2<br> NDK r16b<br> SDK API 28 <br> SDK build tools 26.1.1<br> apache ant 1.10.7 <br> python 2.7.9<br> java jdk1.8.0_91<br> Visual studio 2015 社区版<br>
C# DataTable lambda表达式 三表关联查询问题
我有三个表,Sales,Customer,Order,其中Sales表包含SalesID,Customer中包含SalesID和CustomerID,Order中包含CustomerID和OrderID。 问题:使用lambda表达式,通过SalesID查出Order中所有与Sales ID相关的OrderID。 自己搞定了。 ``` using System.Linq; using System.Data; using System; namespace ThreeTables { class Program { static void Main(string[] args) { //创建Sales DataTable DataTable salesDataTable = new DataTable(); salesDataTable.Columns.Add("SalesID", typeof(string)); salesDataTable.Rows.Add("01"); salesDataTable.Rows.Add("02"); //创建Customer DataTable DataTable customerDataTable = new DataTable(); customerDataTable.Columns.Add("SalesID", typeof(string)); customerDataTable.Columns.Add("CustomerID", typeof(string)); customerDataTable.Rows.Add("01", "0101"); customerDataTable.Rows.Add("01", "0102"); customerDataTable.Rows.Add("02", "0201"); customerDataTable.Rows.Add("02", "0202"); //创建Orders DataTable DataTable orderDataTable = new DataTable(); orderDataTable.Columns.Add("CustomerID", typeof(string)); orderDataTable.Columns.Add("OrderID", typeof(string)); orderDataTable.Rows.Add("0101", "010101"); orderDataTable.Rows.Add("0101", "010102"); orderDataTable.Rows.Add("0201", "020101"); orderDataTable.Rows.Add("0201", "020102"); orderDataTable.Rows.Add("0202", "020201"); //根据salesID关联三表查出与SalesID相关的所有订单 string orderid = Console.ReadLine(); var result = salesDataTable.AsEnumerable().Where(x => x["SalesID"].ToString() == orderid) .Join(customerDataTable.AsEnumerable(), a => a["SalesID"].ToString(), b => b["SalesID"].ToString() , (a, b) => new { SalesID = a.Field<string>("SalesID"), CustomerID = b.Field<string>("CustomerID") }) .Join(orderDataTable.AsEnumerable(), c => c.CustomerID, d => d["CustomerID"].ToString() , (c, d) => new { SalesID = c.SalesID, CustomerID = c.CustomerID, OrderID = d.Field<string>("OrderID").ToString() }).ToList(); foreach(var s in result) { Console.WriteLine(s.SalesID + " " + s.CustomerID + " " + s.OrderID); } Console.Read(); } } } ```
VB如何调用C#dll中的事件
1、C#中定义了一个事件,并测试可以调用,然后生成一个dll文件; ![图片说明](https://img-ask.csdn.net/upload/201909/02/1567416208_954907.png)![图片说明](https://img-ask.csdn.net/upload/201909/02/1567416220_834290.png) 2、引用C#dll文件,但是在初始化时无法调用C#中的事件; ![图片说明](https://img-ask.csdn.net/upload/201909/02/1567416277_219359.png) 我是小菜,尝试了好多方法都没搞定,还请各路大神帮帮忙,感谢
ubuntu16.04安装g2o报错
本想着复现高翔十四讲的代码的,装个g2o失败了,如下图所示。上网找了很久也没搞定,求解答呀...
用Idea从GitHub上导入项目,同事都能用,就我的新电脑启动不了其中一个Application,报的以下错误,求大神援助
12:21:30.904 [main] WARN org.springframework.context.annotation.AnnotationConfigApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'com.wondersgroup.oms.springboot.starter.mybatis.JeesuiteMybatisConfiguration': Unsatisfied dependency expressed through field 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [org/mybatis/spring/boot/autoconfigure/MybatisAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method 'sqlSessionFactory' threw exception; nested exception is org.springframework.core.NestedIOException: Failed to parse mapping resource: 'file [D:\workspace\oms\oms-upms\oms-upms-rpc-service\target\classes\com\wondersgroup\oms\upms\dao\mapper\UpmsOnlineLogMapper.xml]'; nested exception is org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML. The XML location is 'file [D:\workspace\oms\oms-upms\oms-upms-rpc-service\target\classes\com\wondersgroup\oms\upms\dao\mapper\UpmsOnlineLogMapper.xml]'. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'org.mybatis.caches.ehcache.LoggingEhcache'. Cause: java.lang.ClassNotFoundException: Cannot find class: org.mybatis.caches.ehcache.LoggingEhcache 在不改动项目的基础上,怎么搞定这个问题,我怎么都弄不明白,别人都在写代码了,我还启动不了,好急。。
求一个苏宁下单源码。。c#的。登录我已经搞定 了,就是结算搞不定啊
求一个苏宁下单源码。。c#的。登录我已经搞定 了,就是结算搞不定啊
Failed to retrieve data from /webhdfs/v1?op=LISTSTATUS: Server Error
请教各位大神: 通过CENTOS 7自带的FIREFOX去查看HDFS,DataNode及NameNode都已经正常显示,但是查阅Utilties中的Browse Directory,产生如下错误: ![图片说明](https://img-ask.csdn.net/upload/201911/30/1575127373_682984.jpg) 还请大神指示一下,应该从哪些配置文件着手去查看故障?谢谢! 相关LOG: 2019-11-30 23:24:17,964 INFO org.apache.hadoop.util.JvmPauseMonitor: Detected pause in JVM or host machine (eg GC): pause of approximately 1778ms No GCs detected 2019-11-30 23:25:41,727 INFO org.apache.hadoop.ipc.Server: IPC Server handler 1 on default port 9820, call Call#2 Retry#0 org.apache.hadoop.hdfs.protocol.ClientProtocol.mkdirs from 192.168.100.125:57842: org.apache.hadoop.fs.ParentNotDirectoryException: /test (is not a directory) 搞定了: JAVA JDK 13.0.1改成JAVA JDK 8就解决了问题,晕倒~整了一周居然是这个问题~~~~
怎么生成复杂参数的测试用例
在测试用例的编写中,当输入参数是简单的情况,不含有其他自属性时, 我们可以把所有的情况列出来,然后利用全对偶测试法把所有的用例搞定,但是当输入参数是一个List,或者是一个复杂属性(包含许多其他属性),怎么处理这种情况。
vue前端websocket连接不上springboot,报错Connection closed before receiving a handshake response
搞定了,我的代码写的基本没有问题,毕竟都是按着教程一步一步来的,主要问题在于,我的开发环境和教程不一致,我是前后端分离,请求8080即请求的前端项目,当然会超时然后建立连接失败。我查看了一下前后端各自的端口:前端8080,后端63000,然后把 ``` this.sock = new WebSocket("ws:localhost:8080/websocket");//建立连接 ``` 改成 ``` this.sock = new WebSocket("ws:localhost:63000/websocket");//建立连接 ``` 就可以了,换成后端的端口号。 --- 以下是原问题 --- 照着网上的教程写的例子,整合到自己的项目中。前端用vue写的,js里几乎和教程一模一样,主要问题在于 ``` this.sock = new WebSocket("ws:localhost:8080/websocket");//建立连接 ``` --- **创建的websocket内的方法都是null,如图:** ![图片说明](https://img-ask.csdn.net/upload/201909/24/1569293600_266157.png) --- **然后观察控制台内过了一段时间报错,提示:** ``` WebSocket connection to 'ws://localhost:8080/websocket' failed: Connection closed before receiving a handshake response ``` --- **控制台错误详情见图:** ![图片说明](https://img-ask.csdn.net/upload/201909/24/1569294057_247788.png) --- **前端代码:** ``` webSocket() { debugger; // 建立socket连接 if ('WebSocket' in window) {//判断当前浏览器是否支持webSocket // this.sock = new WebSocket("ws:localhost:8080/bootTest/websocket");//建立连接(带后端项目名) this.sock = new WebSocket("ws:localhost:8080/websocket");//建立连接(不带后端项目名) } else { alert('你的浏览器暂不支持websocket :('); } var sock = this.sock; console.log(sock); sock.onopen = function (e) {//成功建立连接 console.log(e); }; sock.onmessage = function (e) {//接收到消息 console.log(e) $(".message").append("<p><font color='red'>"+e.data+"</font>") }; sock.onerror = function (e) {//连接发生错误 console.log(e); }; sock.onclose = function (e) {//连接关闭 console.log(e); }; ////监听窗口关闭事件,当窗口关闭时,主动去关闭websocket连接,防止连接还没断开就关闭窗口,server端会抛异常。 window.onbeforeunload = function(){ websocket.close(); }; } ``` --- --- --- --- 后端代码: ``` import java.io.IOException; import java.util.concurrent.CopyOnWriteArraySet; import javax.websocket.server.PathParam; import javax.websocket.server.ServerEndpoint; import javax.websocket.*; import lombok.extern.slf4j.Slf4j; @Slf4j @ServerEndpoint("/websocket") public class WebSocketServer { //静态变量,用来记录当前在线连接数。应该把它设计成线程安全的。 private static int onlineCount = 0; //concurrent包的线程安全Set,用来存放每个客户端对应的MyWebSocket对象。 private static CopyOnWriteArraySet<WebSocketServer> webSocketSet = new CopyOnWriteArraySet<WebSocketServer>(); //与某个客户端的连接会话,需要通过它来给客户端发送数据 private Session session; /** * 连接建立成功调用的方法*/ @OnOpen public void onOpen(Session session) { this.session = session; webSocketSet.add(this); //加入set中 addOnlineCount(); //在线数加1 log.info("有新连接加入!当前在线人数为" + getOnlineCount()); try { sendMessage("连接成功"); } catch (IOException e) { log.error("websocket IO异常"); } } // //连接打开时执行 // @OnOpen // public void onOpen(@PathParam("user") String user, Session session) { // currentUser = user; // System.out.println("Connected ... " + session.getId()); // } /** * 连接关闭调用的方法 */ @OnClose public void onClose() { webSocketSet.remove(this); //从set中删除 subOnlineCount(); //在线数减1 log.info("有一连接关闭!当前在线人数为" + getOnlineCount()); } /** * 收到客户端消息后调用的方法 * @param message 客户端发送过来的消息 */ @OnMessage public void onMessage(String message, Session session) { log.info("来自客户端的消息:" + message); //群发消息 for (WebSocketServer item : webSocketSet) { try { item.sendMessage(message); } catch (IOException e) { e.printStackTrace(); } } } /** * 发生错误 * @param session * @param error */ @OnError public void onError(Session session, Throwable error) { log.error("发生错误"); error.printStackTrace(); } public void sendMessage(String message) throws IOException { this.session.getBasicRemote().sendText(message); } /** * 群发自定义消息 * */ public static void sendInfo(String message) throws IOException { log.info(message); for (WebSocketServer item : webSocketSet) { try { item.sendMessage(message); } catch (IOException e) { continue; } } } public static synchronized int getOnlineCount() { return onlineCount; } public static synchronized void addOnlineCount() { WebSocketServer.onlineCount++; } public static synchronized void subOnlineCount() { WebSocketServer.onlineCount--; } } ```
一个.rar格式的自己加密的压缩文件包求解密
一个.rar格式的自己加密的压缩文件包求解密 详细说明:首先说明一点,这是我自己N前年编写的网站源程序,不涉及什么别人的稳私 或版权的问题,只是因为是自己刚毕业的时候自己做的一个项目,当时也不知道出于什么原因 就自己设置压缩包的密码了,事过多年,对当年设置的密码印象一点全无!抱着一丝希望 来CSDN求助,山外有山人外有人对吧,我自己解决不了的问题,说不定别人就能搞定呢! 对吧?如果有高手能帮解了我的压缩包密码,感激涕零,万言谢不尽。可以接受有酬服务! 谢谢!
.NET Core WebApi实现商城创建订单功能
小程序 购物车多个产品一起下单 未付款 到待付款 这个接口具体是怎么实现的 两张表订单表 订单详情表 先 生成订单这个搞定了 订单详情是怎么生成的 一个接口实现 小白刚学 订单表 ![图片说明](https://img-ask.csdn.net/upload/201909/10/1568087701_381189.jpg) 订单详情表 ![图片说明](https://img-ask.csdn.net/upload/201909/10/1568087715_976611.jpg)
各位大神,寻找离散数据拐点
有一组离散数据(数据不够平滑,有毛刺),如图所示,现在需要得到稳定阶段的数据段,请问应该怎么提取这段啊,麻烦说一下是怎样寻找两个端点的,因为数据不够平滑,一直都没搞定,希望大家给点意见,最好附上python代码。非常感谢 ![图片说明](https://img-ask.csdn.net/upload/201909/28/1569679470_329628.png)
C#编程显示预览TIF格式图片分页的问题
**因为有个项目客户需要在线预览TIF格式的图片,而且这个TIF图片一张里面有2页,我要用C#编写相关代码我用<img src="**.tif">这样根本就显示不出来,然后去网上找插件,找了一个tif的插件还需要手动安装 ,安装完后,发现页面预览的时候只显示一张tif图片里面的第一页图。所以还是没有成功,(上述说的装了插件能显示一页,还是在IE浏览器中的情况,貌似在其他浏览器中装了插件都没法预览这个tif图片),希望CSDN里面的大神能给予一下帮助,再下做牛做马都难以报答你们的救命之情。实在是客户在催了 这周这个东西就要搞定。大家帮帮忙。。。**
Asp.net core下的UserManager如何扩展功能?
基于IdentityServer4示例代码部署了一套SSO并实现QQ第三方登录之后,想在IS4基础之上再扩展一下身份服务的功能。大致的想法是: 1.给IdentityUser增加一些常用的字段,比如微信昵称、QQ昵称; 2.增加几个不太常用的表,比如详细个人信息、个人认证情况等,一般对应于App上第二层子菜单里面的内容。 第一个想法比较容易实现,只要实现一个继承IdentityUser的子类,然后在用到IdentityUser泛型类的地方(比如UserManager<IdentityUser>)替换成新的子类就可以了(如UserManager<NewUser>)。 第二个想法,则有很多实现方法,我能想到的有比如写一个新的DbContext去连接新增的数据表,然后再写新的Manager和UserStore代码去实现想要的方法即可。但是,是不是有可能扩展原来的UserManager、UserStore、ApplicationDbContext这样一种做法呢? 要扩展UserManager,我看下来大致有继承方式、extension方式。不过从IS4示例代码来看,似乎注入新的manager会出现不少麻烦。 示例代码添加UserManager和UserStore是通过以下代码完成的: ``` services .AddIdentity<IdentityUser, IdentityRole>(null) .AddImadyEntityFrameworkStores<ApplicationDbContext>() .AddDefaultTokenProviders(); ``` 查看Asp.Net Core的源码可以看到,AddIdentity扩展方法添加了一串诸如各种Validator的服务后添加了UserManager: ``` ...... services.TryAddScoped<UserManager<IdentityUser>>(); services.TryAddScoped<SignInManager<IdentityUser>>(); ...... ``` 而UserStore则是在AddImadyEntityFrameworkStores中完成的: ``` ...... AddStores(builder.Services, builder.UserType, builder.RoleType, typeof(TContext)); ...... ``` 于是我想,是否可以自己写两个新的IServiceCollection扩展方法,替换掉AddIdentity和AddImadyEntityFrameworkStores就能为所欲为了呢? 实际操作下来发现没有这么简单,运行时各种服务解析问题的报错。主要是Asp.Net Core代码中向框架大量请求了UserManager和IUserStore,而UserManager注入是不通过接口方式的,IUserStore则是AddImadyEntityFrameworkStores扩展方法中通过反射方式添加的注入,反正我是没最终搞定。 所以把这个问题放到问答来,看看各位大牛一般在实战中是如何操作的呢?
Fuel部署openstack,controller节点报错:Timeout waiting for host '10.10.10.2' status to become 'up' after 60 seconds!
环境: 1、宿主机:乌班图14.04 2、KVM安装Fuel8.0 3、Fuel部署openstack 设备: 1、宿主机:R230 1台(六个网卡) 2、路由器和二层交换机:各1台(openstack公共网络10.10.10.X用) 3、controller node:R710 1台(4个网卡,网卡1用于PXE启动,网卡2-4用于公共、数据、存储、私有网络) 4、compute node:R710 4台(同上) 网络: 1、Fuel上创建两个虚拟网卡:eth0(PXE,10.20.0.2),eth1(public,10.10.10.2) 2、openstack环境网络如下图:![图片说明](https://img-ask.csdn.net/upload/201911/06/1573020229_675955.png) 3、controller节点绑定组如下图:![图片说明](https://img-ask.csdn.net/upload/201911/06/1573020376_18273.png) 按照网上说明流程配置完毕后,点部署,ubuntu顺利安装完毕,然后controller节点开始安装openstack, 0%等了大约5-6分钟,报错:![图片说明](https://img-ask.csdn.net/upload/201911/06/1573020491_207530.png) 节点错误描述:![图片说明](https://img-ask.csdn.net/upload/201911/06/1573020513_459033.png) 网上有一篇说关闭windows防火墙,但是我没有用到windows系统,管理宿主机防火墙也不行。 研究了四五天,没搞定,求各位大神指导,不胜感激!!
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
Linux(服务器编程):15---两种高效的事件处理模式(reactor模式、proactor模式)
前言 同步I/O模型通常用于实现Reactor模式 异步I/O模型则用于实现Proactor模式 最后我们会使用同步I/O方式模拟出Proactor模式 一、Reactor模式 Reactor模式特点 它要求主线程(I/O处理单元)只负责监听文件描述符上是否有事件发生,有的话就立即将时间通知工作线程(逻辑单元)。除此之外,主线程不做任何其他实质性的工作 读写数据,接受新的连接,以及处...
为什么要学数据结构?
一、前言 在可视化化程序设计的今天,借助于集成开发环境可以很快地生成程序,程序设计不再是计算机专业人员的专利。很多人认为,只要掌握几种开发工具就可以成为编程高手,其实,这是一种误解。要想成为一个专业的开发人员,至少需要以下三个条件: 1) 能够熟练地选择和设计各种数据结构和算法 2) 至少要能够熟练地掌握一门程序设计语言 3) 熟知所涉及的相关应用领域的知识 其中,后两个条件比较容易实现,而第一个...
C语言魔塔游戏
很早就很想写这个,今天终于写完了。 游戏截图: 编译环境: VS2017 游戏需要一些图片,如果有想要的或者对游戏有什么看法的可以加我的QQ 2985486630 讨论,如果暂时没有回应,可以在博客下方留言,到时候我会看到。 下面我来介绍一下游戏的主要功能和实现方式 首先是玩家的定义,使用结构体,这个名字是可以自己改变的 struct gamerole { char n
进程通信方式总结与盘点
​ 进程通信是指进程之间的信息交换。这里需要和进程同步做一下区分,进程同步控制多个进程按一定顺序执行,进程通信是一种手段,而进程同步是目标。从某方面来讲,进程通信可以解决进程同步问题。 ​ 首先回顾下我们前面博文中讲到的信号量机制,为了实现进程的互斥与同步,需要在进程间交换一定的信息,因此信号量机制也可以被归为进程通信的一种方式,但是也被称为低级进程通信,主要原因为: 效率低:一次只可操作少量的...
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观
听说了吗?阿里双11作战室竟1根网线都没有
双11不光是购物狂欢节,更是对技术的一次“大考”,对于阿里巴巴企业内部运营的基础保障技术而言,亦是如此。 回溯双11历史,这背后也经历过“小米加步枪”的阶段:作战室从随处是网线,交换机放地上的“一地狼藉”;到如今媲美5G的wifi网速,到现场却看不到一根网线;从当年使用商用AP(无线路由器),让光明顶双11当天断网一分钟,到全部使用阿里自研AP……阿里巴巴企业智能事业部工程师们提供的基础保障...
在阿里,40岁的奋斗姿势
在阿里,40岁的奋斗姿势 在阿里,什么样的年纪可以称为老呢?35岁? 在云网络,有这样一群人,他们的平均年龄接近40,却刚刚开辟职业生涯的第二战场。 他们的奋斗姿势是什么样的呢? 洛神赋 “翩若惊鸿,婉若游龙。荣曜秋菊,华茂春松。髣髴兮若轻云之蔽月,飘飖兮若流风之回雪。远而望之,皎若太阳升朝霞;迫而察之,灼若芙蕖出渌波。” 爱洛神,爱阿里云 2018年,阿里云网络产品部门启动洛神2.0升...
关于研发效能提升的思考
研发效能提升是最近比较热门的一个话题,本人根据这几年的工作心得,做了一些思考总结,由于个人深度有限,暂且抛转引入。 三要素 任何生产力的提升都离不开这三个因素:人、流程和工具,少了其中任何一个因素都无法实现。 人,即思想,也就是古人说的“道”,道不同不相为谋,是制高点,也是高层建筑的基石。 流程,即方法,也是古人说的“法”。研发效能的提升,也就是要提高投入产出比,既要增加产出,也要减...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple/ 
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆  每天早上8:30推送 作者| Mr.K   编辑| Emma 来源| 技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯
程序员该看的几部电影
##1、骇客帝国(1999) 概念:在线/离线,递归,循环,矩阵等 剧情简介: 不久的将来,网络黑客尼奥对这个看似正常的现实世界产生了怀疑。 他结识了黑客崔妮蒂,并见到了黑客组织的首领墨菲斯。 墨菲斯告诉他,现实世界其实是由一个名叫“母体”的计算机人工智能系统控制,人们就像他们饲养的动物,没有自由和思想,而尼奥就是能够拯救人类的救世主。 可是,救赎之路从来都不会一帆风顺,到底哪里才是真实的世界?
入职阿里5年,他如何破解“技术债”?
简介: 作者 | 都铎 作为一名技术人,你常常会听到这样的话: “先快速上线” “没时间改” “再缓一缓吧” “以后再解决” “先用临时方案处理” …… 当你埋下的坑越来越多,不知道哪天哪位同学就会踩上一颗雷。特别赞同“人最大的恐惧就是未知,当技术债可说不可见的时候,才是最让人不想解决的时候。” 作为一个程序员,我们反对复制粘贴,但是我们经常会见到相似的代码,相同的二方包,甚至整个代码...
Python绘图,圣诞树,花,爱心 | Turtle篇
每周每日,分享Python实战代码,入门资料,进阶资料,基础语法,爬虫,数据分析,web网站,机器学习,深度学习等等。 公众号回复【进群】沟通交流吧,QQ扫码进群学习吧 微信群 QQ群 1.画圣诞树 import turtle screen = turtle.Screen() screen.setup(800,600) circle = turtle.Turtle()...
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东
破14亿,Python分析我国存在哪些人口危机!
2020年1月17日,国家统计局发布了2019年国民经济报告,报告中指出我国人口突破14亿。 猪哥的朋友圈被14亿人口刷屏,但是很多人并没有看到我国复杂的人口问题:老龄化、男女比例失衡、生育率下降、人口红利下降等。 今天我们就来分析一下我们国家的人口数据吧! 一、背景 1.人口突破14亿 2020年1月17日,国家统计局发布了 2019年国民经济报告 ,报告中指出:年末中国大陆总人口(包括31个
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ......
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!
2020年的1月,我辞掉了我的第一份工作
其实,这篇文章,我应该早点写的,毕竟现在已经2月份了。不过一些其它原因,或者是我的惰性、还有一些迷茫的念头,让自己迟迟没有试着写一点东西,记录下,或者说是总结下自己前3年的工作上的经历、学习的过程。 我自己知道的,在写自己的博客方面,我的文笔很一般,非技术类的文章不想去写;另外我又是一个还比较热衷于技术的人,而平常复杂一点的东西,如果想写文章写的清楚点,是需要足够...
别低估自己的直觉,也别高估自己的智商
所有群全部吵翻天,朋友圈全部沦陷,公众号疯狂转发。这两周没怎么发原创,只发新闻,可能有人注意到了。我不是懒,是文章写了却没发,因为大家的关注力始终在这次的疫情上面,发了也没人看。当然,我...
Java坑人面试题系列: 包装类(中级难度)
Java Magazine上面有一个专门坑人的面试题系列: https://blogs.oracle.com/javamagazine/quiz-2。 这些问题的设计宗旨,主要是测试面试者对Java语言的了解程度,而不是为了用弯弯绕绕的手段把面试者搞蒙。 如果你看过往期的问题,就会发现每一个都不简单。 这些试题模拟了认证考试中的一些难题。 而 “中级(intermediate)” 和 “高级(ad
深度学习入门笔记(十八):卷积神经网络(一)
欢迎关注WX公众号:【程序员管小亮】 专栏——深度学习入门笔记 声明 1)该文章整理自网上的大牛和机器学习专家无私奉献的资料,具体引用的资料请看参考文献。 2)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应。如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主删除。 3)博主才疏学浅,文中如有不当之处,请各位指出,共同进步,谢谢。 4)此属于第一版本,若有错误,还需继续修正与...
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。 再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。 下文是原回答,希望能对你能有所启发。 如果我说,这个世界上人真的分三六九等,...
节后首个工作日,企业们集体开晨会让钉钉挂了
By 超神经场景描述:昨天 2 月 3 日,是大部分城市号召远程工作的第一天,全国有接近 2 亿人在家开始远程办公,钉钉上也有超过 1000 万家企业活跃起来。关键词:十一出行 人脸...
Java基础知识点梳理
Java基础知识点梳理 摘要: 虽然已经在实际工作中经常与java打交道,但是一直没系统地对java这门语言进行梳理和总结,掌握的知识也比较零散。恰好利用这段时间重新认识下java,并对一些常见的语法和知识点做个总结与回顾,一方面为了加深印象,方便后面查阅,一方面为了学好java打下基础。 Java简介 java语言于1995年正式推出,最开始被命名为Oak语言,由James Gosling(詹姆
2020年全新Java学习路线图,含配套视频,学完即为中级Java程序员!!
新的一年来临,突如其来的疫情打破了平静的生活! 在家的你是否很无聊,如果无聊就来学习吧! 世上只有一种投资只赚不赔,那就是学习!!! 传智播客于2020年升级了Java学习线路图,硬核升级,免费放送! 学完你就是中级程序员,能更快一步找到工作! 一、Java基础 JavaSE基础是Java中级程序员的起点,是帮助你从小白到懂得编程的必经之路。 在Java基础板块中有6个子模块的学
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合
你也能看懂的:蒙特卡罗方法
蒙特卡罗方法,也称统计模拟方法,是1940年代中期由于科学技术的发展和电子计算机的发明,而提出的一种以概率统计理论为指导的数值计算方法。是指使用随机数(或更常见的伪随机数)来解决很多计算问题的方法 蒙特卡罗方法可以粗略地分成两类:一类是所求解的问题本身具有内在的随机性,借助计算机的运算能力可以直接模拟这种随机的过程。另一种类型是所求解问题可以转化为某种随机分布的特征数,比如随机事件出现的概率,或...
相关热词 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数 c#日期精确到分钟 c#自定义异常必须继承 c#查表并返回值 c# 动态 表达式树 c# 监控方法耗时 c# listbox c#chart显示滚动条
立即提问